My Digital Garden

dotnet-standard

DotNet Standard

.NET Standard is a formal specification of .NET APIs that are intended to be available on all .NET implementations. docs

The motivation behind .NET Standard is to establish greater uniformity in the .NET ecosystem. ECMA 335 continues to establish uniformity for .NET implementation behavior, and while ECMA 335 specifies a small set of standard libraries, the .NET Standard specification encompasses a broader range of .NET APIs.

.NET Standard enables the following key scenarios:

Defines uniform set of BCL APIs for all .NET implementations to implement, independent of workload. Enables developers to produce portable libraries that are usable across .NET implementations, using this same set of APIs. Reduces or even eliminates conditional compilation of shared source due to .NET APIs, only for OS APIs. The various .NET implementations target specific versions of .NET Standard.

Each .NET implementation version advertises the highest .NET Standard version it supports, a statement that means it also supports previous versions.

See also