The only thing I would add to Ted's answer is that C++ adds support for object oriented programming. C has no concept of classes, instances, methods etc. It is pure procedural programming. OO programming gets all the press these days, but a lot of your favorite open source projects are written in good old fashioned C. (For speed, portability or historical reasons)