Microsoft releases .NET 5.0 Final - gHacks Tech News

ADVERTISEMENT

Microsoft releases .NET 5.0 Final

Microsoft has released .NET 5.0 final on November 10, 2020. The new version of the company's .NET framework is available for Windows, Mac OS, Linux, and ARM operating systems.  Microsoft promises that .NET 5.0 improves performance "greatly", that it includes language improvements, and highlights that Windows ARM64 and WebAssembly were added to the supported platforms in that release.

The announcement was made during the virtual .NET Conf 2020 designed specifically to provide developers with information about the new releases. The company released ASP.Net Core, EF Core, C# 9, and F# 5 on November 10, 2020 as well.

Microsoft unveiled .NET 5.0 back in May 2019 with the intention to release the final version of .NET 5.0 in November 2020. New major versions of .NET will be released once a year in November; the next major release, .NET 6.0, will be released in November 2021. Microsoft labels .NET 5.0 as a current release and will support it until February 2022 (approximately three months after .NET 6.0 is released).

Visual Studio 16.8 or later is required to use .NET 5.0 on Windows machines; Mac OS developers need the latest version of Visual Studio for Mac, and C# extension and Visual Studio Code support .NET 5.0 and C# 9 already.

Major .NET 5.0 changes and improvements

microsoft.net

  • Performance improvements across the board. Microsoft published a detailed analysis that includes benchmark results here. Sorting algorithm and Just in Time compiler performance has increased significantly.
  • Improved performance for .NET libraries, e.g. Json serialization, regular expressions, HTTP.
  • P95 latency drop thanks to improvements in areas such as garbage collection or tiered compilation.
  • Improved application deployment options, e.g. Server Core container images, single-file apps and reduced container image sizes.
  • Expanded platform scope to include Windows ARM64 and WebAssembly.
  • C# 9 and F# 5 language improvements.

Microsoft published a detailed post on its Dot Net Dev Blog that provides additional information about the new features and improvements of .NET 5.0.  Release notes for the latest .NET Core updates are available here.

Downloads are provided on the official Dot Net download site; there you find SDK and runtime downloads for all supported operating systems.

Summary
Microsoft releases .NET 5.0 Final
Article Name
Microsoft releases .NET 5.0 Final
Description
Microsoft has released .NET 5.0 final on November 10, 2020. The new version of the company's .NET framework is available for Windows, Mac OS, Linux, and ARM operating systems. 
Author
Publisher
Ghacks Technology News
Logo
Advertisement

Previous Post: «
Next Post:

Comments

  1. finoderi said on November 11, 2020 at 9:22 am
    Reply

    “Microsoft labels .NET 5.0 as a current release and will support it until February 2020…”

    1. Martin Brinkmann said on November 11, 2020 at 9:36 am
      Reply

      Thanks, fixed!

  2. NeonRobot said on November 11, 2020 at 10:40 am
    Reply

    Main question. Is it compatible with mighty win7x64?

    1. xRaver said on November 11, 2020 at 12:26 pm
      Reply

      Yes .NET 5.0 supports win7 but only if you’re under the ESU program
      https://github.com/dotnet/core/blob/master/release-notes/5.0/5.0-supported-os.md
      https://github.com/dotnet/core/issues/4894

      and if what Rich Lander (richlander/ .NET team member) wrote it’s true (We will make our support plans for Windows 7 ESU on a release-by-release basis) then the answer for support plans for .NET 6 LTS is probably yes (Wishful thinking, i know)
      https://github.com/dotnet/core/issues/5567

  3. Yuliya said on November 11, 2020 at 11:23 am
    Reply

    Interesting they provide two different installers for x86 and x64. Previously they only had one, ~twice the size, which decided what to intall.

  4. Clairvaux said on November 11, 2020 at 11:42 am
    Reply

    Is an end-user on Windows 7 (meaning no Microsoft upgrades anymore) supposed to do anything about it ? And if yes, what ?

    That download page seems horribly complex. What is Visual Studio ? Do I have it ? Do I need it ?

    1. Yuliya said on November 11, 2020 at 1:10 pm
      Reply

      You have to download “.NET Desktop Runtime 5.0.0” from:
      https://dotnet.microsoft.com/download/dotnet/5.0

      Precisely:
      https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-desktop-5.0.0-windows-x64-installer
      https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-desktop-5.0.0-windows-x86-installer
      On a 64-bit system you must install both (order in which you do so doesn’t matter).

      Do note, this does not superseed .NET 4.8, which you can get from:
      https://dotnet.microsoft.com/download/dotnet-framework

      On a fresh install you want both 4.8 and 5. On 7 you must install an update prior to 4.8 (can’t remember which one, but you can easily find out by even just running the installer if I remember correctly).

      You can check what you end up with by using netver:
      http://www.asoft.be/prod_netver.html

      If everything is okay, it should look like this:
      https://i.imgur.com/fCREqVx.png

      1. Yuliya said on November 11, 2020 at 1:16 pm
        Reply

        One extra for Windows 10 users: .NET 4.8 installs as an update instead of a regular program, which means in order to usinstall* it you must go to installed updates, not installed programs.
        .NET 5 is seen as an installed program, so you uninstall it as you would uninstall any regular program off your computer.

        *if DISM cleanup has run, be it user-initiated after 30 days, user-forced or auto after 30 days, this operation cannot be undone through regular UI means afaik.

        — This does not concern Windows 7 users. Chances are Win8.1 behaves like Win10 in this regard (I don’t know).

      2. Clairvaux said on November 11, 2020 at 9:17 pm
        Reply

        Thank you, Yuliya.

  5. Emil said on November 11, 2020 at 11:55 am
    Reply

    Does this replace the 3.1.4 runtime that I found in my installed programs list? Should that one even be there?

  6. Igor said on November 11, 2020 at 1:33 pm
    Reply

    The most updated .NET Framework is v4.8 (in Microsoft page). Is this a update for that, or is a separate product.
    For example: I have framework 4.8 installed, do I need to update to this, or wait to a new ‘v5.0’ framework comes out.
    Since the installer says it is a runtime not a framework. Can someone clarify this to me.

    Thanks.

    1. Yuliya said on November 11, 2020 at 1:34 pm
      Reply

      Separate product, like the v4 family is separate from the v3.5 family.

  7. Pdat said on November 11, 2020 at 8:13 pm
    Reply

    If you do not use latest software, games or cloud services, then the net framework 5.0 is uneccesary

  8. John G. said on November 11, 2020 at 8:37 pm
    Reply

    I think that NET version inside W10 should be updated as a separate program indeed. :]

  9. BonkerMan said on November 12, 2020 at 11:03 am
    Reply

    So, if program “x” requires .NET Framework 4 and program “y” requires .NET Framework 3.5 to run, can I remove both “old” frameworks and replace them with this new and shiny 5 and both programs still work? OR do I have to install yet another behemoth-sized .NET Framework to cater to my possible future needs in the ultra-stupidly, end user-hostile designed .NET Framework realm?

    1. Yuliya said on November 12, 2020 at 11:48 am
      Reply

      No. If a program requires .NET 4.5 it will work with the newest .NET of v4 “family”, which is 4.8. v5 is a different family. So is 3.5. The latest versions for which ackwards compatibility is no longer offered in newer versions are:
      1.0
      1.1
      2.0 SP2
      3.0 SP2
      3.5 SP1
      4.8
      5.0.0

      Say if a program requires .NET 2.0, it will only work if you have v2 installed, regardless of whether or not you have other versions installed (3, 3.5, 4, etc).

    2. John G. said on November 12, 2020 at 4:46 pm
      Reply

      You can see an easy answer: how many Microsoft Visual C++ versions do you have installed? Shouldn’t all old ones uninstalled and working only with the last one? Nope, MS works so. :[

    3. Cigologic said on November 14, 2020 at 3:20 am
      Reply

      > BonkerMan: “if program “x” requires .NET Framework 4 and program “y” requires .NET Framework 3.5 to run, can I remove both “old” frameworks and replace them with this new and shiny 5 and both programs still work?”

      Possibly — see remark at bottom.

      Contrary to what many people (mistakenly) think, .NET Framework v4.x does have backward compatibility with programs requiring .NET v3.5/3.0/2.0 /1.x.

      As such, it is perfectly alright to keep only .NET v4.x (eg. v4.8) installed, but uninstall .NET v3.5. Likewise, if one is running Win 10 which comes bundled with .NET 4.7 onwards but not .NET v3.5, there is no need to install .NET v3.5 just to run programs targeting the older .NET versions.

      The trick is to create a configuration file named “.exe.config” specifying the various supported runtime attributes, & put this config file in the program’s working folder (ie. next to the program’s main executable).

      https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-configure-an-app-to-support-net-framework-4-or-4-5

      For instance, if the main executable file is called “BonkerPlay.exe”, use a text editor to create a “BonkerPlay.exe.config” plain-text file with the desired supported runtime attributes. If the file already exists, simply add the required “supportedRuntime” attributes at the correct section.

      Text for XXXXXXXX.exe.config” file: https://justpaste.it/DotNETRuntimeConfig

      You can indicate as many or as few “supportedRuntime” attributes (vX.X.XXXX) as you deem fit — in order of preference (first-listed = most preferred) — to specify support for multiple .NET versions. Usually, it is sufficient to indicate just the attributes for .NET 4.x & .NET 2.0/3.x.

      .NET Framework Version & Corresponding supportedRuntime Attribute:
      ▶ .NET 1.0: v1.0.3705
      ▶ .NET 1.1: v1.1.4322
      ▶ .NET 2.0/3.0/3.5: v2.0.50727
      ▶ .NET 4.0-4.8: v4.0

      Using this method, I am able to run .NET v2.0/3.5 programs with only .NET v4.8 installed. Without the config file in the respective programs’ working folders, these older .NET programs would otherwise fail to launch.

      REMARK: Regarding .NET v5.0, the same config file may possibly/logically also support a “supportedRuntime version” attribute for “v5.0”. This could be something for users with .NET v5.0 (but no older .NET versions installed) to test for programs targeting .NET v4.x/3.x.

  10. BonkerMan said on November 13, 2020 at 1:40 pm
    Reply

    Thank you very much for the information. No 5.0 for me then.

  11. KeZa said on November 15, 2020 at 4:40 pm
    Reply

    What if you not install the frameworks? The programs that need it wont work or how does this work ?

    1. KeZa said on November 18, 2020 at 5:01 pm
      Reply

      anyone???

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.