The release of .NET Standard 2.0 announces a great breath of fresh air for .NET developers.

Let 's get back together on:

  • What is standard .NET?
  • Why is this going to make life easier for us .NET developers?
  • How is it different from PCL?
  • But isn't it the same as .NET core?
  • Why does .NET Standard 2.0 change the game?

What is .NET Standard?

The .NET standard is a formal specification of .NET APIs that are intended to be available on all .NET implementations. .NET standard This is to establish greater uniformity in the .NET ecosystem.

How is it different from PCL?

A PCL is a library that targets a set of platforms.

The .NET standard is the opposite: we only target a standard that is implemented by our .NET frameworks.

Sharing code becomes simpler It is more important to choose the right PCL profile than just the version of the standard supported by the targeted platforms.

But isn't it the same as .NET core?

.NET Core is another version from .NET Framework (such as Xamarin It is a cross-platform version of .NET (Linux, Mac, Windows) and modular. .NET Core respect also .NET standard.

How does .NET Standard 2.0 change the game?

There were 13K shared APIs in .NET standard 1.6 with .NET standard 2.0 they go to 36K.

Microsoft tested all NuGet packages available on NuGet.org and found that 70% of the nugget packages are compatible with .NET Standard 2.0.

Thanks to .NET Standard we will be able to share our .NET code easily across all .NET frameworks: Xamarin, .NET core, UWP...

Supported versions of .NET Standard:

.NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0
.NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0
.NET Framework (with .NET Core 1.x SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.2
.NET Framework (with .NET Core 2.0 SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 4.6.1 4.6.1
Mono 4.6 4.6 4.6 4.6 4.6 4.6 4.6 5.4
Xamarin.iOS 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.14
Xamarin.Mac 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.8
Xamarin.Android 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.5
Universal Windows Platform 10.0 10.0 10.0 10.0 10.0 vNext vNext vNext
Windows 8.0 8.0 8.1
Windows Phone 8.1 8.1 8.1
Windows Phone Silverlight 8.0

Conclusion:

The .NET ecosystem is rapidly evolving! Microsoft's two priorities are open source and cross-platform.

And .NET Standard is one of the answers to these priorities.

To go further:

.NET Standard – Official document

Series of videos to discover .NET Standard