4 ms·
.NET languages are compiled. The compilers build an intermediate representation (IL, similar to bytecode in languages that use a VM) and they're just-in-time co
by Todd 16y ago
.NET languages are compiled. The compilers build an intermediate representation (IL, similar to bytecode in languages that use a VM) and they're just-in-time compiled when they're first loaded, so they run as native code. As an aside, one advantage is your assemblies automatically compile to 32- or 64-bit based on your platform, so you get "free" access to +4GB of memory if you're deployed to a 64-bit machine.
Java (for example) and C# benchmarks tend to be close because Java is very mature and, even though it runs on a VM, is highly optimized. It compares favorably with C for this reason.
The MS compilers are very good and Mono is catching up. If you run on Linux, you'll probably be slower than Java in many cases. That will change over time.
Stability is a different question. The stability of C#, F#, etc. is not related to Windows and IIS as platforms. You can run C# based web stacks on Linux.