Before you understand the difference between .NET Core SDK vs Runtime vs Hosting Bundle, you need to know about the .NET Core.
What is .NET Core?
.NET Core is an Open Source software development framework which used to create, build, and run the cross platform supported .NET Core application. This .NET Core application can be Web application, Web API, Console Application, Desktop Applications.
What is SDK?
This is Software Development Kit as the name suggest, you need to install this software when you want to create/develop the .NET Core application.
This SDK pack includes everything which required to create, build, and run the .NET Core application. You can use command line interface, or any other IDE like Visual Studio to create, build and run the .NET Core applications. So, you must install the .NET Core SDK installer in your system to work on .NET Core application.
Note: If you install .NET Core SDK, this includes runtime components too. So, no need to install the Runtime packages separately.
SDK includes everything one who required in .NET Core application development.
What is Runtime Installer?
The runtime installer only includes everything which required to run the .NET Core applications.
Runtime installer only installs the things which allows to run the .NET Core application.
There are two Runtime Installers available,
- ASP.NET Core Runtime – This Installer installs the components to run.NET Core web applications.
- .NET Core Runtime – This Installer installs the components to run .NET Core console applications.
Note: Runtime installer specific to particular platform. So, this will install only platform specific components to run the Core application.
Installer size will be less, hence its only installing runtime component specific to platform.
There is another option called Hosting Bundle.
What is Hosting Bundle?
As name suggest, Hosting Bundle includes IIS Support and .NET Core Runtime. This only applicable for Windows OS now.
Note: .NET Core team recommends, to install Hosting Bundle instead of Runtime Installers.
So, if you are a .NET Core developer, SDK will be the preferred installer which includes everything which developer required from create to publish the applications.
Hosting Bundle can be installed on the server (Windows Server with IIS deploy) where your application will be hosted and production use.
You can download latest version of .NET Core SDK, from the .NET Official site.
3.1 is the latest version of NET Core.
In the download page, you can find the different types(.NET Core SDK vs Runtime vs Hosting Bundle) of available installers based on version.
To check about the installed details about .NET Core in your system, use following command using Command Prompt or Windows PowerShell
So, as you see I have already installed .NET Core SDK in my machine, it includes .NET Core SDK and .NET Core Runtime.
So here I am summarizing the difference between .NET Core SDK vs Runtime vs Hosting Bundle.
.NET Core SDK has included everything which requires for core developers. No need to installs the components for particular functions separately. So, in development machine, its preferred to install .NET Core SDK.
Runtime Installer only has components which required to run the applications, so it will be installed in Server where you host the applications. But Hosting Bundle for Windows is recommended on Server machine, which allows to run/host the application with IIS Supporting components. In Runtime Installer, you need to setup and install IIS Supporting components separately.