Originally Posted by
WasserEsser
C# is managed, meaning that you compile into IL code which gets interpreted at runtime by the CLR.
C++ is compiled directly into binary, meaning that your code is faster if you didn't write complete shit since the code doesn't have to get interpreted but already is interpreted and compiled into CPU instructions. Since there is no CLR in the middle which interprets your code and runs it, you are much closer to the hardware. You have direct memory access as long as you stay in your own memory space.