C# nuk kompajlohet direkt në kod makinerie. Ai kompajlohet në IL (Intermediate Language) — një bytecode i pavarur nga platforma — të cilin CLR e ekzekuton, duke përdorur JIT (Just-In-Time) compilation për të përkthyer IL në kod makinerie nativ në kohën e ekzekutimit. AOT (Ahead-Of-Time) është një alternativë që kompajlon në kod nativ në kohën e ndërtimit.
Tubacioni i ekzekutimit
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
