The long-awaited .NET 7 has been released today. Back when the first preview was released, Microsoft said .NET 7 “marks the first step forward towards the next 20 years of .NET.”

.NET 7 leverages some of the foundations that were laid in .NET 6, including a simplified development experience, improved developer productivity, and a unified set of base libraries, runtime, and SDK. 

The focus areas for .NET 7 are providing tools for upgrading legacy projects, improved cloud-native development support, and a simplified experience for working with containers. 

“.NET 7 is built for modern cloud native apps, mobile clients, edge services and desktop technologies,” Jon Douglas, principal program manager for NuGet; Jeremy Likness, principal program manager for .NET Web Frameworks and .NET; and Angelos Petropoulos, product manager for .NET, wrote in a blog post

.NET MAUI comes included with .NET 7, which will make it easier for developers to create mobile versions of their applications.

This release also includes updates to Blazor, which is a framework for creating web apps with C#. The updates include support for handling location change events, improvements to the debugging experience for WebAssembly, and out-of-the-box support for using OpenID Connect for authentication. 

In order to help developers migrate legacy applications to .NET 6 and .NET 7, Microsoft offers the .NET Upgrade Assistant. The tool provides step-by-step guidance, insights, and automation for making the switch.

.NET 7 launches with support for several Azure platform-as-a-service offerings: App Service for Windows and Linux, Static Web Apps, Azure Functions, and Azure Container Apps.

To make it easier to work with containers, .NET 7 will enable developers to create a containerized version of their app by using “dotnet publish.” The goals Microsoft had when creating this capability was to have it integrate with existing build logic and be available out-of-the-box.

“The popularity and practical usage of containers is rising, and for many companies, they represent the preferred way of deploying to the cloud. However, working with containers adds new work to a team’s backlog, including building and publishing images, checking security and compliance, and optimizing the performance of images. We believe there’s an opportunity to create a better, more streamlined experience with .NET containers,” the team wrote.

This is only scratching the surface of what’s available in .NET 7. For a complete list of new features, visit the blog post published by Microsoft.