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
