Prerequisites for .NET Core on Windows

This article shows the supported OS versions in order to run .NET Core applications on Windows. The supported OS versions and dependencies that follow apply to the three ways of developing .NET Core apps on Windows:

Also, if you're developing on Windows using Visual Studio, the Prerequisites to develop .NET Core apps with Visual Studio section goes in more detail about minimum versions supported for .NET Core development.

.NET Core supported operating systems

The following articles have a complete list of .NET Core supported operating systems per version:

For download links and more information, see .NET downloads to download the latest version or .NET downloads archive for older versions.

.NET Core dependencies

Microsoft Visual C++ 2015 Redistributable Update 3 must be manually installed when:

  • Installing .NET Core with the installer script.
  • Deploying a self-contained .NET Core application.
  • Building the product from source.
  • Installing .NET Core via a .zip file. This can include build/CI/CD servers.

Note

For Windows 8.1 and earlier versions, or Windows Server 2012 R2 and earlier versions:

Make sure that your Windows installation is up-to-date and includes KB2999226, which can be installed through Windows Update. If you don't have this update installed, you'll see an error like the following when you launch a .NET Core application: The program can't start because api-ms-win-crt-runtime-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem.

For Windows 7 or Windows Server 2008 R2:

In addition to KB2999226, make sure you also have KB2533623 installed. If you don't have this update installed, you'll see an error similar to the following when you launch a .NET Core application: The library hostfxr.dll was found, but loading it from C:\<path_to_app>\hostfxr.dll failed.

Prerequisites to develop .NET Core apps with Visual Studio

Even though you can use any editor to develop .NET Core applications using the .NET Core SDK, Visual Studio 2017 and later versions provide an integrated development environment for .NET Core apps on Windows.

Each .NET Core version has a minimum version of Visual Studio required. To verify your Visual Studio version:

  • On the Help menu, choose About Microsoft Visual Studio.
  • In the About Microsoft Visual Studio dialog, verify the version number.

The following table lists the minimum version for each SDK:

.NET Core SDK version Visual Studio version
3.0 Visual Studio 2019 version 16.3 or higher.
2.2 Visual Studio 2017 version 15.9 or higher.
2.1 Visual Studio 2017 version 15.7 or higher.
1.x Visual Studio 2017 version 15.0 or higher.

To develop .NET Core apps in Visual Studio 2019 using the .NET Core 3.0 SDK:

  • Download and install Visual Studio 2019 version 16.3 or higher and select one of the following workloads that includes the .NET Core SDK, depending on the kind of application you're building:

    • The .NET Core cross-platform development workload in the Other Toolsets section.
    • The ASP.NET and web development workload in the Web & Cloud section.
    • The NET desktop development workload in the Windows section.

The following image shows the .NET Core cross-platform development workload selected in the Visual Studio UI:

Screenshot of Visual Studio 2019 installation with the ".NET Core cross-platform development" workload selected

Visual Studio 2019 16.3 uses .NET Core 3.0 SDK by default after any of these workloads are installed.

If you want your existing projects to use the latest .NET Core runtime, retarget each existing .NET Core project to .NET Core 3.0 using the following instructions:

  • On the Project menu, choose Properties.
  • In the Target framework selection menu, set the value to .NET Core 3.0.

Screenshot of Visual Studio 2019 Application Project Property with the ".NET Core 3.0" target framework menu item selected

Once you have Visual Studio configured with .NET Core 3.0 SDK, you can do the following actions:

  • Open, build, and run existing .NET Core 1.x and 2.x projects.
  • Retarget .NET Core 1.x and 2.x projects to .NET Core 3.0, build, and run.
  • Create new .NET Core 3.0 projects.