I think learning many different kinds of languages is important. The breadth of experience makes you a better programmer as a whole. During the trial and sampling of many languages you will fall in love with one. Stick with that one! Your job should be fun. Each person has different learning modalities and concepts they just "get" that are congruent with how they think so no one language is perfect for everyone.
But, why learn C? Learn C to broaden your experience and gain a marketable skill in the most popular programming language[1]. You don't have to become an expert in it but I think everyone should dabble in it a little bit!
>I think learning many different kinds of languages is important.
I agree with you, 100%. There are no ultimate languages. You have a broad field, as a developer, of words to use - choose the one you a) get along with, b) can comfortably use, c) and are interested in actually using for something.
What I have observed is that good developers learn other languages faster, the more they do it, i.e. if you set your goal higher, you get better at it each time you iterate. I tend to think, as a generality, that eventually there is a point for each individual developer where the effort to learn some new language/codebase/taxonomy gets flatter and flatter, to the point that there are no 'easier nor harder' levels of it any more.
C is still very, very useful. $35 worth of pocketable computing power and a built-in C compiler can still deliver kick-ass results.
But, why learn C? Learn C to broaden your experience and gain a marketable skill in the most popular programming language[1]. You don't have to become an expert in it but I think everyone should dabble in it a little bit!
1: TIOBE index, June 2012