.NET Framework je platforma technologií v softwarových produktech. Byl vyvinutý společností Microsoft a je primárně určen pro Microsoft Windows. Obsahuje širokou knihovnu tříd pojmenovanou Framework Class Library (FCL). Umožňuje interoperabilitu napříč několika programovacími jazyky, tedy každý jazyk může používat kód psaný v jiném jazyce. Programy napsané pro .NET Framework jsou spouštěny v softwarovém prostředí, které je pojmenované Common Language Runtime (CLR), aplikační virtuální stroj, který nabízí služby jako je bezpečnost, správa paměti a řešení výjimek. Proto se počítačovému kódu psanému ve frameworku .NET říká řízený kód.

FCL zpřístupňuje:

  • uživatelský interface
  • přístup k datům
  • databázovou konektivitu
  • kryptografii
  • vývoj webových aplikací
  • numerické algoritmy
  • síťovou komunikaci

Programátoři vyrábějí software za pomoci kombinace svého zdrojového kódu s .NET frameworkem a dalšími knihovnami. Framework je určen k použití většinou nových aplikací, které jsou vyvíjené pro platformu Windows. Microsoft také vytváří integrované vývojářské prostředí, které je především pro .NET software, pojmenované Visual Studio.

.NET Framework byl původně proprietárním software, přestože se firma snažila téměř okamžitě začít se standardizací a to ještě před prvním releasem. Přese snahy o standardizaci vývojáři vyjádřili nesouhlas s některými podmínkami volného použití, především co se týče patentů. Od té doby Microsoft změnil vývoj .NET v souladu se současnými trendy směrem ke komunitnímu vývoji, včetně toho, že aktualizoval jeho patent.

CLI neboli Common Language Infrastructure

CLI nabízí platformu nezávislou na jazyce, která slouží pro vývoj a spouštění aplikací. Implementací hlavních aspektů .NET Frameworku v rámci CLI tyto funkce nejsou vázány na konkrétní jazyk, ale jsou dostupné napříč všemi jazyky, které Framework podporuje.

CLR neboli Common Language Runtime

CLR je virtuální stroj, který slouží ke spuštění .NET Frameworku a nabízí mnoho služeb, jako je:

  • správa paměti
  • bezpečnost
  • řešení výjimek
  • garbage collection
  • řízení hrozeb

Všechny programy napsané pro .NET Framework jsou spouštěné na CLR. Programy jsou zároveň kompilovány v Common Intermediate Language code (CIL) a nikoliv přímo kompilovány do strojového kódu. Během spuštění mění pro danou architekturu odpovídající Just-in-Time (JIT) kompilátor tento CIL kód do strojového kódu.