.NET 7 is already a reality! Microsoft releases the first Release Candidate of .NET 7
Tags: dotnet, csharp, news, beginners
Published: 2022-09-27 08:03:56

Yes, you are reading correctly. The [first Release Candidate](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/) of the two that are going to be released has just been released.

For those who wonder what **Release Candidate** (_RC_) means, it is the version that has official support from Microsoft for those applications that are in production.

As Microsoft has told us, this is RC1 and RC2 is yet to be released, which is expected to be announced before the [**.NET Conf 2022**](https://www.dotnetconf.net/) (_to be held on_ **_November 8, 9 and 10_**). Let’s analyze what new features .NET 7 RC1 brings.

## .NET MAUI

The first of the features brought with this first RC of .NET 7 is [.NET MAUI](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#net-maui). For those unfamiliar, this stands for **.NET Multi-platform App UI**, the platform with which you can develop applications, as the name suggests, cross-platform. [Microsoft has designed .NET MAUI](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#net-maui) by **unifying all the APIs of the different operating systems** such as Windows, Android, iOS and macOS so that an application can run natively on any of these platforms (_Tizen too_).

The great advantage of .NET MAUI is its ability to not have to develop anything extra (_neither styles nor widgets_) for any specific platform. This makes it possible to **manage everything needed for all target platforms in a single project.**

Within the .NET MAUI itself, there are a variety of new features (_compatibility, performance, usability…_). If you want to know more in depth all the details and news of .NET MAUI, I recommend you to consult these articles so you can understand in depth what it brings:

{% embed https://dev.to/bytehide/xamarins-substitute-is-on-the-way-discover-net-maui-and-its-new-features-hk4 %}

---

## Cloud Native

This is the second of the official features introduced in .NET 7 RC1. Microsoft introduces [Cloud Native](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#cloud-native) as:

> “a set of best practices for building your apps for and in the cloud to take advantage of resilience, scalability, efficiency, and velocity.”

Among the different features and improvements presented by Microsoft for Cloud Native, we can find the **built-in container support within the .NET SDK.**

We also have [**new features for gRPC services**](https://devblogs.microsoft.com/dotnet/announcing-grpc-json-transcoding-for-dotnet/) such as:

-   gRPC JSON transcoding
-   ASP.NET extension which provides RESTful HTTP APIs for gRPC

For those who don’t know what gRPC is, **Remote procedure call** (_RPC_) framework gRPC is a cutting-edge, open source, high-performance RPC framework that may be used everywhere.

The creation of interconnected systems is made simpler by gRPC, which **allows client and server programs to interact invisibly.**

---

## ARM64

As you could already read, the performance in .NET 7 is something that stands out above all previous versions. Based on the performance improvements that were seen from [ARM64 in .NET 5](https://devblogs.microsoft.com/dotnet/arm64-performance-in-net-5/), this time Microsoft has decided to try to get the most out of it and performance.

As [Microsoft claims](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#arm64):

> “ARM provides a small form factor with exceptional performance and high-power efficiency.”

All we can do is wait and see if the performance differences that ARM64 has over x64 will vary with all the improvements that Microsoft promises to bring.

---

## Modernization

It should be noted that Microsoft has also focused on **supporting the migration of applications and projects from previous versions of .NET.** For this purpose, Microsoft has an [**Upgrade Assistant in .NET**](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#modernization) that will help you to migrate your applications to .NET 7 in a very simple way.

In order to get the most out of .NET 7, the .[NET Upgrade Assistant](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/#modernization) will **analyze your projects and update the code files and dependencies**. This way the migration from a previous version of .NET to a new one is made easy!

---

## Performance

We come to the most important point, performance. And it’s not just me, but Microsoft itself claims that the performance improvements in this version of .NET have been amazing:

> “.NET is fast. .NET 7 is the fastest .NET yet.”

Regarding the performance improvements that we can find in .NET 7, among the thousand that Microsoft explains, we focus on:

-   [**Native AOT**](https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/#native-aot)
-   [**Start-up time**](https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/#native-aot)
-   [**On Stack Replacement (OSR)**](https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/#on-stack-replacement)
-   [**Loop optimizations**](https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/)

If you want to know all the performance improvements that brings .NET 7, I recommend you to consult this official Microsoft article: [**Performance Imporvements in .NET 7**](https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/)

---

To close it is worth mentioning that there are less than two months left for .NET Conf 2022, in which .NET 7 will be officially presented with all the improvements and features it brings with it.

Emphasizing that the second Release Candidate is still missing, we will be waiting for it in the coming days, what do you think? Will .NET 7 be the biggest leap forward from previous versions of .NET?