Common Intermediate Language
CIL (Common Intermediate Language) is a language that is generated when any .NET-aware language (C#, VB.NET, VBC++ etc.) is compiled using it's associated compiler. CIL instructions for all .NET-aware languages would be almost same.
CIL is then compiled to platform-specific CPU instructions (native code) by JIT (just-in-time) compiler.
Note: .Net provides a JIT compiler for each type of platform (i.e. Windows, Unix etc.), each optimized for underlying platform.
The image given below shows the flow of CIL and it's execution model.
Important Benfits of CIL
- Language Integration: All .NET-aware languages are able to interact within a well-defined binary environment.
- Language Independence: Unlike to other platforms, .NET allows to build applications with your language of choice.
CIL experts can directly code CIL instructions which has many advantages that are not provided by C#.This is an advanced programming and not necessary for any C# programmer to learn.