.NET implementations

Computer

A .NET application is developed for one or more implementations of .NET. These include the .NET Framework, .NET 5+ (and .NET Core), and Mono.

Each .NET implementation includes the following components.

one or more runtime environments, such as the .NET Framework clr and .NET 5 clr.
a class library, such as the .NET Framework base class libraries and .net 5 base class libraries.
(Optional) one or more application platforms, such as ASP.NET, Windows Forms, and Windows Presentation Foundation (WPF) are included in the .NET Framework and .net 5+.
(Optional) Development tools. Some development tools are shared by multiple implementations.

Microsoft supports four implementations of .NET:

.NET 5 (and .NET Core) and later versions of
.NET Framework
Mono
UWP .

The current major implementation is .NET 6, which is used in current development tasks. .NET 6 is built on a single code base that supports multiple platforms and many workloads, such as classic Windows and cross-platform console applications, cloud services, and Web sites. Some workloads, such as the .NET WebAssembly tools, are available as optional installations.

.NET 5 and later versions.
.NET 5+, formerly known as .NET Core, is a cross-platform implementation of .NET designed to handle an extensive range of server and cloud workloads. It also supports other workloads, including classic applications. This solution runs on Windows, macOS and Linux. It implements .NET Standard, so any code designed for .NET Standard can run on the .NET 5+ platform. ASP.NET Core, Windows Forms, and Windows Presentation Foundation (WPF) run on .NET 5+.

For more information, see the following resources:

General Information about the .NET Platform
.NET and the .NET Framework for Server Applications
.NET 5+ and the .NET Standard
.NET Framework

The .NET Framework is the original implementation of .NET released in 2002. Versions 4.5 and later implement .NET Standard, which means that any code designed for .NET Standard can run in these versions of the .NET Framework. It contains additional Windows APIs, such as APIs for developing desktop applications with Windows Forms and WPF. The .NET Framework is optimized for building desktop applications for Windows.

Mono
Mono is an implementation of .NET that is primarily used when a small runtime environment is needed. It is a runtime environment that can run in Xamarin apps on Android, macOS, iOS, tvOS, and watchOS and is designed for small development. Mono is also suitable for running games based on the Unity subsystem.

Traditionally, Mono implemented the larger .NET Framework API and emulated some of the more popular features in Unix. It has sometimes been used to run .NET applications that apply these features to Unix.

Mono is usually used with a JIT compiler, but it also has a full static compiler (advance compilation) which is used on platforms such as iOS.

Universal Windows Platform (UWP)
UWP is a .NET implementation used to create modern touch-enabled Windows applications and software for the Internet of Things (IoT). It is designed to connect different types of devices that may be needed, including PCs, tablets, phones, and even Xbox. UWP provides many services such as a centralized application store, a runtime environment (AppContainer) and a set of Windows APIs for use instead of Win32 (WinRT). Applications can be written in C++, C#, Visual Basic and JavaScript.

Edit