What is new in .Net 5? and how is it different from .Net core?

This November (2020) we are getting ourselves a new version of .Net called ".Net 5". We are currently at .Net Framework 4.8 and .Net core 3.1 which is the reason behind the jump in version number from .Net core 3.1 to .Net 5, it would simply be confusing if it was called .Net 4 due to Framework using that version number currently.

.Net 5 is .Net core, however since there will only be one .Net going forward there is no need distinguish between framework and .Net core (except for older applications of course). Since .Net 5 is a continuation of .Net core it will support the same features such as: being open source, have side-by-side installations and be cross platform.

So what is new?

  • C# will move forward in lock-step with .NET 5. Developers writing applications in the new .NET 5 will have access to the latest C# version and features. The new versions will be C# 9 and F# 5.
  • The framework name (which you see in your project file) will change to <TargetFramework>net5.0</TargetFramework>. This framework is for code that runs everywhere and it replaces and combines the netcoreapp and netstandard.
  • It will be possible to build and distribute your project as a single file application.
  • Performance will be improved, most notably the HttpClient, regular expressions and string operations will be better performing in .Net 5. It also seems that .Net will be performing better within containers.
  • Support for Windows ARM64
  • Even numbered releases of .Net will be long term supported (LTS). This means that ".Net 5" will not have long term support but we will have to wait for .Net 6 for that - or stick with .Net core 3.1.

It was planned that switching between Mono and .Net core should be as easy as a build switch, however this idea seems to have been postponed to .Net 6. ".Net 5" was supposed to be a unification of all the .Net runtimes, however this will not be the case for now, the global pandemic have been given the blame for this.

Please let me know in the comments if I missed anything on the list or if you found this helpful :)