.NET › CLR & Runtime
What is the CLR (Common Language Runtime), and what are its core responsibilities?
BeginnerAnswer
The CLR is the execution engine of .NET, responsible for managing memory (allocation and garbage collection), just-in-time (JIT) compiling IL code to native machine code, enforcing type safety, handling exceptions, managing threads, and providing security sandboxing. Any .NET language (C#, F#, VB.NET) compiles down to a common Intermediate Language (IL) that the CLR executes uniformly.
// C# source compiles to IL, which the CLR JIT-compiles to native code at runtime
public int Add(int a, int b) => a + b;
// Compiled IL (simplified): ldarg.1, ldarg.2, add, retReal-world example Because the CLR provides a common execution model, a library written in F# can be seamlessly consumed by a C# application, since both compile to the same IL that the CLR executes identically regardless of source language.