C is called middle-level language because it actually binds the gap between a machine level language and high-level languages. A user can use c language to do System Programming (for writing operating system) as well as Application Programming (for generating menu driven customer billing system ). That’s why it is called the middle-level language.