C++ is considered a native language because it compiles directly into machine code that can be understood by the underlying system. C# must first compile into Microsoft Intermediate Language (MSIL) before the just-in-time (JIT) compiler generates machine code. For this reason, C++ is typically faster than C# .