Skip to content
hostcomplex

What Is ASP.NET?

Maarten Soetens 2 min read

What ASP.NET Is and Where It Fits

ASP.NET is a web framework from Microsoft for building websites, web applications and web APIs on the .NET platform. Applications are most often written in C#, although F# and Visual Basic are also supported. The framework provides routing, page rendering, form handling, authentication and data access integration, so developers can focus on application features.

The name covers two generations of technology. The original ASP.NET runs on the .NET Framework and only on Windows. ASP.NET Core is a newer, open-source rewrite that runs on the cross-platform .NET runtime, and new projects are normally built with it.

Main Parts of an ASP.NET Core Application

  • Middleware pipeline: a sequence of components that process each request, for example for error handling, routing, authentication and static files.
  • Kestrel: the cross-platform web server built into ASP.NET Core, usually run behind a reverse proxy in production.
  • MVC and Razor Pages: patterns for building HTML pages, using the Razor syntax to mix C# into templates.
  • Web APIs: controllers or minimal endpoints that return JSON for other applications or front ends.
  • Dependency injection: a built-in mechanism for supplying services, such as database access, to the components that need them.
  • Entity Framework Core: a common data access library that maps C# classes to database tables.

What ASP.NET Needs From a Host

The .NET runtime must be available on the server, unless the application is published as self-contained with its runtime included. Historically, ASP.NET applications were hosted on Windows Server with Internet Information Services (IIS). ASP.NET Core applications can run on Windows, Linux and macOS, and they are often deployed in containers on Linux servers.

Many hosts still offer Windows-based ASP.NET plans for legacy applications. For new projects, the key question is whether the host provides a supported .NET runtime and a way to run the application as a service behind a web server or proxy.

Frequently asked questions

Is ASP.NET the Same as .NET?

No. .NET is the broader platform: the runtime, libraries and software development kit used to build software. ASP.NET is one framework built on that platform for web applications, alongside other application types such as console and desktop programs.

Can ASP.NET Run on Linux?

Yes. ASP.NET Core runs on Linux, as well as on Windows and macOS. The original .NET Framework version of ASP.NET is limited to Windows. When choosing a host, check that the .NET version the application targets is supported on the server's operating system.

What Programming Language Is Used With ASP.NET?

C# is the most common choice and the language used in most documentation and examples. F# is a functional language also supported on .NET, and Visual Basic .NET is supported but used less in new projects. All of these compile to bytecode that runs on the .NET runtime.

  • Two-Factor Authentication

    Two factor authentication hosting adds a second check to control panel, domain and CMS logins. Learn which methods are strongest and why 2FA helps.

  • What Is an A Record?

    What is an A record? Learn how this DNS record maps a hostname to an IPv4 address, why domains use several A records and the root and www pattern.

  • Billing and Automation Platforms

    What is WHMCS? Learn how this commercial billing and automation platform helps hosts sell plans, collect payments and create accounts automatically.