C is considered to be an extremely powerful yet a simple language. Almost everyone who wants to go into programming start with C as the language can teach all the fundamental concepts and this knowledge is essential when learning other complicated languages. Even languages such as C# or C++ are built on C. The language provides a strong foundation and will provide a good foundation.
Here below are a few reasons that make C the ideal first programming language one should learn.
Middle Level Language: C is neither a high level nor a low level but a middle level language. High level language are user oriented and help in faster development of languages while low level languages are machine oriented and provide faster execution of programs. C is a great language because it is combines the good parts of both high level and low level languages. The language is both machine and user oriented and provides a plethora of possibilities.
Mastering Basic Concepts: To learn a language like C++ or Java, one has to master and have idea about basic programming concepts such as polymorphism, classes etc. Learning these complicated concepts would require one to be proficient with basic elements such as block functions. The C language focuses a lot on the basic concepts and provides a strong foundation to basic concepts which will help in learning the complicated concepts.
Structured Language: The programming language C is a block structured language. Each code in C is in a separate blocks which provides easy means of programming and minimizing bugs in the code. C is completely a block structured language and many other old languages tried introducing this concept but could never create something on par with C.
Operating Systems and C: Several major operating systems like Windows, Linux and UNIX are all written with the help of C. The basic understanding of C invariably helps when you want to try modify programs in Operating systems like Windows or Linux. With good knowledge, one can also create their own customized operating system.
Prompt and Fast: C is a programming language which is extremely fast compared to other languages mainly due to the speedy execution of programs. Many games even today use C as their core. The reply to a command should be prompt and fast and there is no match for C in this aspect. Many appliances which are a part of our daily lives have a CPU with them which needs programming with the help of embedded system programs. These programs also have to be fast and should use a little memory. This makes C an ideal programming language.
The fact that C can connect closely with machines and the simplicity of the language makes it a must learn language for budding programmers. You could also enroll into classes for suitable guidance.