Common Language Run time manages the execution of .NET code. Here is how it
works: When you compile a C# program, the output of the compiler is notexecutable
Instead, it is a file that contains a special type of pseudo-code called Microsoft
Intermediate Language (MSIL). MSIL defines a set of portable
instructions that are independent of any
specific CPU. In essence, MSIL defines a portable assembly language. One other point: although MSIL is
similar in concept to Java’s byte code. CLR
the Intermediate code into Executable
code. Thus, any program compiled to MSIL can
be run in any environment for which the CLR is implemented.
JIT: The .NET Framework contains one or more JIT compilers that compile your IL code down to
machine code, or code that is CPU-specific. This is done when the application
is executed for the first time.