Microsoft .NETプラットフォームのコアとなるメカニズム。
Microsoft Windowsやその他OSの上に乗るシステムであり、さらにこの上で動作するWebサービスやインターフェイスを提供する。
このうちサブセットとして仮想計算機部分はISO/IEC 23271として国際標準化されている。
現在はWindows用と、Windows CE用のWindows CE .NETが存在する。
また、公開されているサンプル実装のSSCLI(Shared Source CLI)はFreeBSD用とMac OS X用もある。
Javaとは違い、仕様の一部はオープンであり、実行環境のCLRはCLI(Common Language Infrastructure)の名で2001(平成13)年12月に情報通信の標準化団体ECMAによりEMCA-335が標準化仕様として承認された。
また同時に、MicrosoftがMicrosoft .NET用に開発したC♯言語もECMA-334として承認され、更にISO/IEC 23271としてISO標準化された。
但し、CLIは確かにECMA標準であり、ISO標準であり、オープンソースであるが、かといって、.NET Framework全体がオープンであるかというと、そうではない。
など、Microsoft .NETのうちの実用的な機能は非公開である。つまり公開された仕様で作成可能なのはコンソールプログラムくらい、ということになる。
しかし広い世の中には色々な人がいるもので、有志によりLinux用として、仕様が非公開のWindows FormやASP .NET、ADO .NETまでも含めた.NET Framework互換環境Monoを独自に実装しようとするプロジェクトが勃興している。
当然これはオープンソースであり、一見してSSCLIとは別物となっているため、今後が期待される。
.NET Frameworkには複数のバージョンが存在する。Windowsのバージョンにより、標準インストールされているバージョンが異なり、またインストール可能なバージョンも異なる。
.NET Frameworkのバージョンは次のとおり。
3.0は、コンポーネントごとに異なるバージョン番号を持っており、統一が無い。
OSごとの、インストール可能なバージョンは次のとおり。