Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Tip
This content is an excerpt from the eBook, .NET Microservices Architecture for Containerized .NET Applications, available on .NET Docs or as a free downloadable PDF that can be read offline.
The following decision table summarizes whether to use .NET Framework or .NET 8. Remember that for Linux containers, you need Linux-based Docker hosts (VMs or servers), and that for Windows Containers, you need Windows Server-based Docker hosts (VMs or servers).
Important
Your development machines will run one Docker host, either Linux or Windows. Related microservices that you want to run and test together in one solution will all need to run on the same container platform.
Architecture / App type | Linux containers | Windows containers |
---|---|---|
Microservices on containers | .NET 8 | .NET 8 |
Monolithic app | .NET 8 | .NET Framework .NET 8 |
Best-in-class performance and scalability | .NET 8 | .NET 8 |
Windows Server legacy app ("brown-field") migration to containers | -- | .NET Framework |
New container-based development ("green-field") | .NET 8 | .NET 8 |
ASP.NET Core | .NET 8 | .NET 8 (recommended) .NET Framework |
ASP.NET 4 (MVC 5, Web API 2, and Web Forms) | -- | .NET Framework |
SignalR services | .NET Core 2.1 or higher version | .NET Framework .NET Core 2.1 or higher version |
WCF, WF, and other legacy frameworks | WCF in .NET Core (client library only) or CoreWCF | .NET Framework WCF in .NET 8 (client library only) or CoreWCF |
Consumption of Azure services | .NET 8 (eventually most Azure services will provide client SDKs for .NET 8) |
.NET Framework .NET 8 (eventually most Azure services will provide client SDKs for .NET 8) |