I think what's possibly more relevant WRT to the difference between comparable applications done in C, C++, and Java is the amount of memory consumed. The benchmark game sort of hides from this because the tasks are simple one-off things, but with large and complex programs you'll almost certainly notice the one done in C uses substantially less memory than the one done in C++ or Java, if the C++ or Java programmer is really taking advantage of all the features of the language. Of course, the code base for the C version will probably be bigger too (due to the lack of features ).