C# सीधै machine code मा compile हुँदैन। यो IL (Intermediate Language) — एक platform-independent bytecode — मा compile हुन्छ जुन CLR ले चलाउँछ, JIT (Just-In-Time) compilation प्रयोग गरेर IL लाई runtime मा native machine code मा अनुवाद गर्छ। AOT (Ahead-Of-Time) एक विकल्प हो जसले build time मा native code मा compile गर्छ।
Execution pipeline
C# source (.cs)
│ C# compiler (roslyn)
▼
IL bytecode (in a .dll/.exe assembly) ← platform-INDEPENDENT intermediate code
│ CLR loads it; JIT compiles IL → native code AT RUNTIME (per method, as called)
▼
Native machine code → executes on the CPU
