.NET

.NET is Microsoft’s platform for building and running managed applications. Microsoft describes each release of the original .NET Framework as containing “the common language runtime (CLR), the base class libraries, and other managed libraries.” In practice the platform is a runtime plus a large standard library: you write code in a .NET language, the compiler turns it into Intermediate Language, and the CLR loads and runs it.

The first version, .NET Framework 1.0, shipped with Visual Studio .NET in early 2002 and carried CLR version 1.0. Microsoft’s version-history documentation pairs .NET Framework 1.0 directly with “Visual Studio .NET” and CLR 1.0, the same release that introduced C# 1.0. The platform’s appeal was that several languages, including C#, Visual Basic, and later F#, could all target one runtime and one class library, with automatic memory management, type safety, and security handled by the CLR rather than by each program.

A defining trait of .NET is language interoperability. Because the type system, metadata format, and execution environment are defined by a public standard (the ECMA Common Language Infrastructure), code written in one .NET language can call and inherit from code written in another. An object defined in C# can be subclassed in Visual Basic, and instances can be passed across language boundaries, all because every compiler targets the same common type system.

For its first decade .NET was a Windows-centric, largely proprietary product. Microsoft later rebuilt it as .NET Core, an open-source, cross-platform implementation that runs on Windows, Linux, and macOS, eventually unifying the family under the single name ”.NET.” Throughout these changes the core idea has stayed constant: a managed runtime, a shared class library, and a common type system underneath many languages.