C++ is an object oriented language, hence supports object oriented paradigms, such as encapsulation, inheritance, and polymorphism. C is structure based language, and does not support such object oriented paradigms. C++ also has greater strengths than C, as it is both object oriented and procedural in nature, whereas C is procedural only.