C++ is a low level programming language that adds object-oriented features to its base language C whereas C# is a high level language. C++ compiles down to machine code whereas C# 'compiles' down to CLR (Common Language Runtime), which is interpreted by JIT in ASP.NET .