2017-02-04 05:40:22 +08:00
---
2018-10-05 09:25:35 +08:00
title: Choose between ASP.NET 4.x and ASP.NET Core
2017-02-04 05:40:22 +08:00
author: rick-anderson
2018-10-05 09:25:35 +08:00
description: Explains ASP.NET Core vs. ASP.NET 4.x and how to choose between them.
2018-01-29 23:21:31 +08:00
ms.author: riande
2019-04-23 04:00:59 +08:00
ms.custom: "mvc, seodec18"
2019-07-16 07:44:47 +08:00
ms.date: 07/15/2019
2017-10-01 08:38:25 +08:00
uid: fundamentals/choose-between-aspnet-and-aspnetcore
2017-02-04 05:40:22 +08:00
---
2018-10-05 09:25:35 +08:00
# Choose between ASP.NET 4.x and ASP.NET Core
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
ASP.NET Core is a redesign of ASP.NET 4.x. This article lists the differences between them.
2017-02-04 05:40:22 +08:00
## ASP.NET Core
2018-03-14 11:05:46 +08:00
ASP.NET Core is an open-source, cross-platform framework for building modern, cloud-based web apps on Windows, macOS, or Linux.
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
[!INCLUDE[ ](~/includes/benefits.md )]
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
## ASP.NET 4.x
ASP.NET 4.x is a mature framework that provides the services needed to build enterprise-grade, server-based web apps on Windows.
2017-02-04 05:40:22 +08:00
2018-05-11 23:41:01 +08:00
## Framework selection
2018-10-05 09:25:35 +08:00
The following table compares ASP.NET Core to ASP.NET 4.x.
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
| ASP.NET Core | ASP.NET 4.x |
2017-02-04 05:40:22 +08:00
|---|---|
2017-07-25 05:15:25 +08:00
|Build for Windows, macOS, or Linux|Build for Windows|
2018-06-20 04:06:11 +08:00
|[Razor Pages](xref:razor-pages/index) is the recommended approach to create a Web UI as of ASP.NET Core 2.x. See also [MVC ](xref:mvc/overview ), [Web API ](xref:tutorials/first-web-api ), and [SignalR ](xref:signalr/introduction ).|Use [Web Forms ](/aspnet/web-forms ), [SignalR ](/aspnet/signalr ), [MVC ](/aspnet/mvc ), [Web API ](/aspnet/web-api/ ), [WebHooks ](/aspnet/webhooks/ ), or [Web Pages ](/aspnet/web-pages )|
2017-02-04 05:40:22 +08:00
|Multiple versions per machine|One version per machine|
2019-06-26 22:42:08 +08:00
|Develop with [Visual Studio ](https://visualstudio.microsoft.com/vs/ ), [Visual Studio for Mac ](https://visualstudio.microsoft.com/vs/mac/ ), or [Visual Studio Code ](https://code.visualstudio.com/ ) using C# or F#|Develop with [Visual Studio ](https://visualstudio.microsoft.com/vs/ ) using C#, VB, or F#|
2018-10-05 09:25:35 +08:00
|Higher performance than ASP.NET 4.x|Good performance|
2019-07-16 07:44:47 +08:00
|[Use .NET Core runtime](/dotnet/standard/choosing-core-framework-server)|Use .NET Framework runtime|
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
See [ASP.NET Core targeting .NET Framework ](xref:index#target-framework ) for information on ASP.NET Core 2.x support on .NET Framework.
2017-02-04 05:40:22 +08:00
## ASP.NET Core scenarios
2017-07-25 05:15:25 +08:00
* [Websites ](xref:tutorials/first-mvc-app/index )
* [APIs ](xref:tutorials/first-web-api )
2018-03-14 11:05:46 +08:00
* [Real-time ](xref:signalr/index )
2018-10-05 09:25:35 +08:00
* [Deploy an ASP.NET Core app to Azure ](/azure/app-service/app-service-web-get-started-dotnet )
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
## ASP.NET 4.x scenarios
2017-02-04 05:40:22 +08:00
2018-03-14 11:05:46 +08:00
* [Websites ](/aspnet/mvc )
* [APIs ](/aspnet/web-api )
* [Real-time ](/aspnet/signalr )
2018-10-05 09:25:35 +08:00
* [Create an ASP.NET 4.x web app in Azure ](/azure/app-service/app-service-web-get-started-dotnet-framework )
2017-02-04 05:40:22 +08:00
2018-10-05 09:25:35 +08:00
## Additional resources
2017-02-04 05:40:22 +08:00
2018-03-14 11:05:46 +08:00
* [Introduction to ASP.NET ](/aspnet/overview )
2017-07-25 05:15:25 +08:00
* [Introduction to ASP.NET Core ](xref:index )
2018-10-05 09:25:35 +08:00
* < xref:host-and-deploy / azure-apps / index >