The next major update for .NET has been released. You can now download .NET 8 Preview 2 using the direct download links given below from Microsoft.
.NET 8 will replace .NET 6 in the Long Term Support (LTS) channel which is said to be supported for 3 years after its initial release. Currently, its preview version is available to download which is now Preview 2.
Most likely, .NET 8 will have an additional 6 preview releases and 2 Release Candidates before its first stable release expected in November 2023.
.NET 8 has been tested with Visual Studio 2022 version 17.6 Preview 2.
Let us now see what’s new in .NET 8 before moving on to downloading the Runtimes, SDKs, and the ASP.NET Cores.
On This Page
What’s New in .NET 8
There is a long list of features and improvements in .NET 8. We have highlighted the significant ones for you here:
Features and Improvements in .NET 8 Preview 2
Introduction of Extensions to Built-in Validation Attributes
Microsoft has introduced extensions to the built-in validation attributes in system.ComponentModel.DataAnnotations
. The following extensions have been announced:
-
RequiredAttribute.DisallowAllDefaultValues – Allows validating that structs do not equal their default values.
-
RangeAttribute exclusive bounds – Users can now specify exclusive bounds in their range validation.
-
LengthAttribute – Can be used to set both lower and upper bounds for strings or collections.
-
AllowedValuesAttribute and DeniedValuesAttribute – These attributes can be used to specify allow lists and deny lists for validating a property, respectively.
-
Base64StringAttribute – This attribute validates that a given string is a valid Base64 representation.
Introspection support for function pointers
Function pointers were previously added to .NET 5. However, Microsoft didn’t add a matching experience for the feature in Reflection.
Now, System.Reflection
has been added. This new feature adds the capability to obtain function pointer metadata via Reflection, including parameter types, return types, and calling conventions.
Previously, the IntPtr
type was used for a function pointer type such as with typeof(delegate*<void>())
or when obtaining a function pointer type through reflection such as with FieldInfo.FieldType
.
These are the only features introduced with .NET 8 Preview 2. To learn more about what’s new in this release, read this announcement by Microsoft.
Features and Improvements in .NET 8 Preview 1
Native Ahead-Of-Time (AOT) Compilation
The performance of.NET apps and programs can be significantly improved by using Ahead-of-Time (AOT) compilation. Since everything is included in a single file when publishing an app with Native AOT, the resulting version of your program is entirely self-contained and does not require a separate runtime.
This single file is now smaller than ever. Modern Linux builds can now be up to half their actual size.
Although this feature was previously included in .NET 7, it has now also been supported for macOS.
Improvements to .NET Container Images
Using container images, .NET developers can package and distribute their applications in a portable, lightweight format that runs in a variety of settings and is simple to upload to the cloud.
Microsoft has now updated the following container images:
-
The default Linux distro has been updated to Debian 12
The container images will now be using Debian 12 as the default distro. To give their users plenty of time for the transition, this change has been implemented with the first preview of .NET 8.
-
Run container images with non-root users
Previously, all container images had to be run with the “root” user, which could cause inconvenience. Now, all container images published by Microsoft will be non-root capable.
Other Improvements in .NET 8 Preview 1
Some other improvements have also been made in .NET 8 to different components. To learn more about each one, click on the item below:
To learn more about what’s new in .NET 8 Preview 1, read this announcement by Microsoft.
Download .NET 8 Preview 2
Use the direct download links below to download the .NET 8 Preview 1 Runtime, SDKs, and ASP.NET Core matching your operating system and architecture.
Runtime
Download .NET 8 Preview 2 Desktop Runtime for Windows x64
Download .NET 8 Preview 2 Desktop Runtime for Windows x86
Download .NET 8 Preview 2 Desktop Runtime for Windows ARM64
Download .NET 8 Preview 2 Runtime for macOS x64
Download .NET 8 Preview 2 Runtime for macOS ARM64
Download .NET 8 Preview 2 Runtime Binaries for Linux Arm32
Download .NET 8 Preview 2 Runtime Binaries for Linux Arm64
Download .NET 8 Preview 2 Runtime Binaries for Linux Arm32 Alpine
Download .NET 8 Preview 2 Runtime Binaries for Linux Arm64 Alpine
Download .NET 8 Preview 2 Runtime Binaries for Linux x64
Download .NET 8 Preview 2 Runtime Binaries for Linux x64 Alpine
SDK
Download .NET SDK 8.0.100 Preview 2 for Windows x64
Download .NET SDK 8.0.100 Preview 2 for Windows x86
Download .NET SDK 8.0.100 Preview 2 for Windows ARM64
Download .NET SDK 8.0.100 Preview 2 for macOS x64
Download .NET SDK 8.0.100 Preview 2 for macOS ARM64
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux Arm32
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux Arm64
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux Arm32 Alpine
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux Arm64 Alpine
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux x64
Download .NET SDK 8.0.100 Preview 2 Binaries for Linux x64 Alpine
ASP.NET Core
Download ASP.NET Core Runtime 8 Preview 2 Hosting Bundle for Windows
Download ASP.NET Core Runtime 8 Preview 2 for Windows x64
Download ASP.NET Core Runtime 8 Preview 2 for Windows x86
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Windows ARM64
Download ASP.NET Core Runtime 8 Preview 2 Binaries for macOS x64
Download ASP.NET Core Runtime 8 Preview 2 Binaries for macOS ARM64
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux Arm32
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux Arm64
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux Arm32 Alpine
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux Arm64 Alpine
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux x64
Download ASP.NET Core Runtime 8 Preview 2 Binaries for Linux x64 Alpine
More download and install options for .NET 8 here.
Install .NET 8
You can begin by downloading the right .NET version for you from the links above and then running it to begin the installation process. Here is how:
Once you have installed the newer .NET preview version, all your applications will run using the new build as the previous preview version will be replaced. However, if a stable version is installed and running, it will not be replaced.
-
Execute the downloaded installation package and click Install.
Install .NET 8 Preview 2 Run the installation package by double-clicking it (in the case of macOS and Windows), and then clicking Install on the installation wizard.
-
Close the wizard once the installation is complete.
Close the .NET installation wizard The installation will now begin. It does not take much time nor does it require a restart. Click Close once it has been installed successfully.
You have now installed the .NET. You may check which .NET version is running by running the following command in Command Prompt:
wmic product get description | findstr /C:.NET

How to Remove/Uninstall .NET
If you wish to remove a .NET version from your computer, you can simply uninstall it like any other regular application. Here are the steps to following:
-
Open the Programs & Features applet by typing in “appwiz.cpl” in the Run Command box.
Open Programs & Features applet -
Right-click the .NET component that you want to remove, then click Uninstall from the context menu.
Uninstall .NET The uninstallation wizard will now launch.
-
Click Uninstall again.
Uninstall .NET from wizard -
When removed, click Close.
Close the .NET uninstallation wizard
Conclusion
At the time of writing this post, .NET 7.0.4 was the latest Standard Support stable release for .NET, and .NET 6.0.15 was the stable LTS release. We recommend that you stay on these (or later stable releases) for your production environments.
However, for testing purposes, you can install .NET 8 Preview from the links shared above and try out what’s new today.
.NET 8 Release History
Complete Version | Release Date | Significant Improvements | Announcement |
.NET 8 Preview 2 | 14-Mar-23 | – Updates to libraries – Introspection support for function pointers | Microsoft announces .NET 8 Preview 2 |
.NET 8 Preview 1 | 21-Feb-23 | – Native AOT – Improvements to container images and Runtime Libraries | Microsoft announces .NET 8 Preview 1 |
Related posts: