Roadmap › Modern .NET — Hosting, Configuration, DI & Deployment › Module: Deployment and Performance
Lessons in this course (9)

7. Deployment models and hosting

Intermediate★ Must knowLesson 7 of 9
ModelWhat shipsWhen
Framework-dependentYour DLLs; runtime installed on serverSmallest output; shared runtime patched by ops
Self-containedYour app + runtimeNo runtime install needed; bigger
Single-fileOne executableEasy distribution
Native AOTNative binary, no JITFast startup, low memory: serverless, containers, CLIs
ContainerDocker image (mcr.microsoft.com/dotnet/aspnet:10.0)Kubernetes, Azure Container Apps

Hosting ASP.NET Core: Kestrel (built-in cross-platform web server) behind IIS (in-process via the ASP.NET Core Module, or out-of-process), Nginx/Apache, Azure App Service, containers or YARP. dotnet publish -c Release produces the deployable output. .NET SDK can build container images without a Dockerfile: dotnet publish -t:PublishContainer.