For C, up until about 2000 - 2005 it was probably the most popular language out, then the whole Object Oriented programming thing happen and the 2 main languages were C++ and Java( I'll come back to these 2 later ). C is considered a low level( some say mid-level ) language. The best way to put that is, C programs tend to run closer to the hardware( less layers etc ) and the language gives you let says more power ( good and bad ). Now a days C is only used where you need the program to be as efficient and fast as possible, these programs typically include
* Operating systems ( I'm pretty sure Windows 7 & 8 still have some legacy C code, Linux/Android, Mac OS , iOS and a host of others, at the core they are written in C )
* Embedded systems
* Game Programming was all done in C up until about 2003 and everybody switched over to C++ pretty much after the Unreal engine popped up.
* Simulations / Security software, I think NASA still uses a lot of C.
I'm sure I'm leaving out other fields, but that's just off the top. So ya from the 80's-90's C ruled the world. But of course with great power , comes great responsibility. C programming pretty much let you do anything you wanted, there's not a whole lot of constraints in the language, which led to bugs and the most famous ones came from the fact you have to manage memory yourself, and in doing so led to security problems( namely buffer overflows ). Now you have to add onto the fact C is not Object Oriented. Hello C++. While C++ was objected oriented and it almost match the speed of C( early C++ compilers were not as optimized as C compilers ), you still had to manage memory yourself and a host of other things. Here comes Sun's Java and Microsoft C# ( History lesson, Microsoft had their own version of Java called J++, but Sun microsystems sued MS, so Microsoft created C# ), Java and later C# were designed with security in mind. You no longer had to manage memory yourself or worry about buffer overflows( supposedly ), Also Java came with a bunch of pre-written libraries saving the developer time.
Java's biggest selling points were( Write Once, Run anywhere and Security ). Java/C# have what's called a Garbage collector, that basically does a lot of the low level work for you, whereas in C you have to take care of it yourself, So this allowed developers to focus more on Software problems instead of computer problems(Also since C runs so close to the hardware it's not as portable as Java ).
So unless you decide to write programs in the above fields, I would stay away from C, but it will *never* be outdated. There's a lot of legacy code out there and if it works companies usually will not risk changing it, Plus trust me if you ever have to write a windows program from scratch in C, you'd kill yourself. I'm talking about writing 200 - 300 lines of code just to setup a window and have a dialog box. ( Wow bringing back the memories..ha-ha ).
For Android programs, most of them are written in Java, for iOS it's Objective C ( god awful language). But nowadays there's so many frameworks out there, you can write mobile apps in just about any language( I've seen an Android game written in Python.. I wouldn't recommend it though. Lol)