The middle-tier web application is hosted on a web server.


When the server runs the Windows operating system then you will be using IIS as the web server.


ASP.NET on Windows

The web application is hosted on IIS.

IIS stands for Internet Information Services. This is the web server that comes with Windows. IIS is a reliable, high-capacity and scalable web server. See the wiki page for the history of IIS.


ASP.NET Core on Windows

The web application is hosted on Kestrel with IIS as a reverse-proxy server, or Kestrel without IIS. Kestrel is a cross-platform web server for ASP.NET Core.


ASP.NET Core on Linux

The web application is hosted on Kestrel, or Kestrel with a reverse-proxy server like Nginx or Apache.

Kestrel is the default web server included in ASP.NET Core project templates. Information on hosting ASP.NET Core in the Microsoft documentation.

Development web server

During development the ASP.NET or ASP.NET Core web application project will automatically use the IIS Express development web server that comes with Visual Studio. This server runs without the need for any configuring.