Choose between ASP.NET 4.x and ASP.NET Core

ASP.NET Core is a redesign of ASP.NET 4.x. This article lists the differences between them.

ASP.NET Core

ASP.NET Core is an open-source, cross-platform framework for building modern, cloud-based web apps on Windows, macOS, or Linux.

ASP.NET Core provides the following benefits:

  • A unified story for building web UI and web APIs.
  • Architected for testability.
  • Razor Pages makes coding page-focused scenarios easier and more productive.
  • Blazor lets you use C# in the browser alongside JavaScript. Share server-side and client-side app logic all written with .NET.
  • Ability to develop and run on Windows, macOS, and Linux.
  • Open-source and community-focused.
  • Integration of modern, client-side frameworks and development workflows.
  • A cloud-ready, environment-based configuration system.
  • Built-in dependency injection.
  • A lightweight, high-performance, and modular HTTP request pipeline.
  • Ability to host on IIS, Nginx, Apache, Docker, or self-host in your own process.
  • Side-by-side app versioning when targeting .NET Core.
  • Tooling that simplifies modern web development.

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.

Framework selection

The following table compares ASP.NET Core to ASP.NET 4.x.

ASP.NET Core ASP.NET 4.x
Build for Windows, macOS, or Linux Build for Windows
Razor Pages is the recommended approach to create a Web UI as of ASP.NET Core 2.x. See also MVC, Web API, and SignalR. Use Web Forms, SignalR, MVC, Web API, WebHooks, or Web Pages
Multiple versions per machine One version per machine
Develop with Visual Studio, Visual Studio for Mac, or Visual Studio Code using C# or F# Develop with Visual Studio using C#, VB, or F#
Higher performance than ASP.NET 4.x Good performance
Use .NET Core runtime Use .NET Framework runtime

See ASP.NET Core targeting .NET Framework for information on ASP.NET Core 2.x support on .NET Framework.

ASP.NET Core scenarios

ASP.NET 4.x scenarios

Additional resources