diff --git a/docs/core/install/how-to-detect-installed-versions.md b/docs/core/install/how-to-detect-installed-versions.md index 4c62fced2bb7a..924eac218966c 100644 --- a/docs/core/install/how-to-detect-installed-versions.md +++ b/docs/core/install/how-to-detect-installed-versions.md @@ -33,6 +33,7 @@ You get output similar to the following. 5.0.100 [C:\program files\dotnet\sdk] 6.0.402 [C:\program files\dotnet\sdk] 7.0.100 [C:\program files\dotnet\sdk] +8.0.100 [C:\program files\dotnet\sdk] ``` ::: zone-end @@ -44,6 +45,7 @@ You get output similar to the following. 5.0.100 [/home/user/dotnet/sdk] 6.0.402 [/home/user/dotnet/sdk] 7.0.100 [/home/user/dotnet/sdk] +8.0.100 [/home/user/dotnet/sdk] ``` ::: zone-end @@ -55,6 +57,7 @@ You get output similar to the following. 5.0.100 [/usr/local/share/dotnet/sdk] 6.0.402 [/usr/local/share/dotnet/sdk] 7.0.100 [/usr/local/share/dotnet/sdk] +8.0.100 [/usr/local/share/dotnet/sdk] ``` ::: zone-end @@ -75,13 +78,16 @@ You get output similar to the following. Microsoft.AspNetCore.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] +Microsoft.WindowsDesktop.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] ``` ::: zone-end @@ -102,6 +108,7 @@ Microsoft.NETCore.App 3.1.0 [/home/user/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.0 [/home/user/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.0 [/home/user/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.0 [/home/user/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 8.0.0 [/home/user/dotnet/shared/Microsoft.NETCore.App] ``` ::: zone-end @@ -122,6 +129,7 @@ Microsoft.NETCore.App 3.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.Ap Microsoft.NETCore.App 5.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 8.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] ``` ::: zone-end diff --git a/docs/core/install/linux.md b/docs/core/install/linux.md index ca9eb4df36222..4f247d0298b2a 100644 --- a/docs/core/install/linux.md +++ b/docs/core/install/linux.md @@ -3,7 +3,7 @@ title: Install .NET on Linux distributions description: Learn about how to install .NET on Linux. .NET is not only available at package.microsoft.com, but also the official package archives for various Linux distributions. author: adegeo ms.author: adegeo -ms.date: 05/04/2023 +ms.date: 11/13/2023 --- # Install .NET on Linux diff --git a/docs/core/install/macos.md b/docs/core/install/macos.md index 211412bd99432..6880ca19941c3 100644 --- a/docs/core/install/macos.md +++ b/docs/core/install/macos.md @@ -3,7 +3,7 @@ title: Install .NET on macOS description: Learn about what versions of macOS you can install .NET on. author: adegeo ms.author: adegeo -ms.date: 12/21/2022 +ms.date: 11/13/2023 --- # Install .NET on macOS @@ -16,23 +16,23 @@ ms.date: 12/21/2022 In this article, you learn how to install .NET on macOS. .NET is made up of the runtime and the SDK. The runtime is used to run a .NET app and might or might not be included with the app. The SDK is used to create .NET apps and libraries. The .NET runtime is always installed with the SDK. -The latest version of .NET is 7. +The latest version of .NET is 8. > [!div class="button"] > [Download .NET Core](https://dotnet.microsoft.com/download/dotnet) ## Supported releases -There are two types of supported releases, Long Term Support (LTS) releases or Standard Term Support (STS). The quality of all releases is the same. The only difference is the length of support. LTS releases get free support and patches for three years. STS releases get free support and patches for 18 months. For more information, see [.NET Support Policy](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). +There are two types of supported releases: Long Term Support (LTS) releases and Standard Term Support (STS) releases. The quality of all releases is the same. The only difference is the length of support. LTS releases get free support and patches for three years. STS releases get free support and patches for 18 months. For more information, see [.NET Support Policy](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). The following table is a list of currently supported .NET releases and the versions of macOS they're supported on: -| Operating System | .NET 7 (STS) | .NET 6 (LTS) | -|------------------------|--------------|--------------| -| macOS 13.0 "Ventura" | ✔️ 7.0 | ✔️ 6.0 | -| macOS 12.0 "Monterey" | ✔️ 7.0 | ✔️ 6.0 | -| macOS 11.0 "Big Sur" | ✔️ 7.0 | ✔️ 6.0 | -| macOS 10.15 "Catalina" | ✔️ 7.0 | ✔️ 6.0 | +| Operating System | .NET 8 (LTS) | .NET 7 (STS) | .NET 6 (LTS) | +|------------------------|--------------|--------------|--------------| +| macOS 13.0 "Ventura" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 | +| macOS 12.0 "Monterey" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 | +| macOS 11.0 "Big Sur" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 | +| macOS 10.15 "Catalina" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 | For a full list of .NET versions and their support life cycle, see [.NET Support Policy](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). @@ -61,7 +61,7 @@ The SDK is used to build and publish .NET apps and libraries. Installing the SDK ## Notarization -Beginning with macOS Catalina (version 10.15), all software built after June 1, 2019 that is distributed with Developer ID, must be notarized. This requirement applies to the .NET runtime, .NET SDK, and software created with .NET. +Beginning with macOS Catalina (version 10.15), all software built after June 1, 2019 that's distributed with Developer ID must be notarized. This requirement applies to the .NET runtime, .NET SDK, and software created with .NET. The runtime and SDK installers for .NET have been notarized since February 18, 2020. Prior released versions aren't notarized. If you run a non-notarized app, you'll see an error similar to the following image: @@ -82,9 +82,9 @@ brew install mono-libgdiplus ## Install with an installer -macOS has standalone installers that can be used to install .NET 7: +macOS has standalone installers that can be used to install .NET 8: -- [x64 and Arm64 CPUs](https://dotnet.microsoft.com/download/dotnet/7.0) +- [x64 and Arm64 CPUs](https://dotnet.microsoft.com/download/dotnet/8.0) ## Download and manually install @@ -94,6 +94,7 @@ As an alternative to the macOS installers for .NET, you can download and manuall First, download a **binary** release for either the SDK or the runtime from one of the following sites. If you install the .NET SDK, you won't need to install the corresponding runtime: +- ✔️ [.NET 8 downloads](https://dotnet.microsoft.com/download/dotnet/8.0) - ✔️ [.NET 7 downloads](https://dotnet.microsoft.com/download/dotnet/7.0) - ✔️ [.NET 6 downloads](https://dotnet.microsoft.com/download/dotnet/6.0) - ✔️ [.NET Core 3.1 downloads](https://dotnet.microsoft.com/download/dotnet/3.1) @@ -104,7 +105,7 @@ Next, extract the downloaded file and use the `export` command to set `DOTNET_RO Alternatively, after downloading the .NET binary, the following commands can be run from the directory where the file is saved to extract the runtime. These commands also make the .NET CLI commands available at the terminal and set the required environment variables. **Remember to change the `DOTNET_FILE` value to the name of the downloaded binary**: ```bash -DOTNET_FILE=dotnet-sdk-7.0.100-osx-x64.tar.gz +DOTNET_FILE=dotnet-sdk-8.0.100-osx-x64.tar.gz export DOTNET_ROOT=$(pwd)/dotnet mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT" @@ -145,6 +146,8 @@ The following table describes which versions of .NET are supported on an Arm-bas | .NET Version | Architecture | SDK | Runtime | [Path conflict](#path-conflicts) | |--------------|--------------|-----|---------|----------------------------------| +| 8 | Arm64 | Yes | Yes | No | +| 8 | x64 | Yes | Yes | No | | 7 | Arm64 | Yes | Yes | No | | 7 | x64 | Yes | Yes | No | | 6 | Arm64 | Yes | Yes | No | @@ -154,7 +157,7 @@ Starting with .NET 6, the x64 and Arm64 versions of the .NET SDK exist independe ### Path differences -On an Arm-based Mac, all Arm64 versions of .NET are installed to the normal _/usr/local/share/dotnet/_ folder. However, when you install the **x64** version of .NET 7 SDK, it's installed to the _/usr/local/share/dotnet/x64/dotnet/_ folder. +On an Arm-based Mac, all Arm64 versions of .NET are installed to the normal _/usr/local/share/dotnet/_ folder. However, when you install the **x64** version of .NET SDK, it's installed to the _/usr/local/share/dotnet/x64/dotnet/_ folder. ### Path conflicts @@ -170,6 +173,7 @@ Visual Studio for Mac installs the .NET SDK when the **.NET** workload is select | .NET SDK version | Visual Studio version | | --------------------- | ---------------------------------------------------- | +| 8.0 | Visual Studio 2022 for Mac 17.8 or higher. | | 7.0 | Visual Studio 2022 for Mac 17.4 or higher. | | 6.0 | Visual Studio 2022 for Mac Preview 3 17.0 or higher. | | 3.1 | Visual Studio 2019 for Mac version 8.4 or higher. | @@ -192,12 +196,12 @@ While Visual Studio Code doesn't come with an automated .NET installer like Visu The [dotnet-install scripts](../tools/dotnet-install-script.md) are used for automation and non-admin installs of the runtime. You can download the script from the [dotnet-install script reference page](../tools/dotnet-install-script.md). -The script defaults to installing the latest [long term support (LTS)](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) version, which is .NET 6. You can choose a specific release by specifying the `channel` switch. Include the `runtime` switch to install a runtime. Otherwise, the script installs the SDK. +The script defaults to installing the latest [long term support (LTS)](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) version, which is .NET 8. You can choose a specific release by specifying the `channel` switch. Include the `runtime` switch to install a runtime. Otherwise, the script installs the SDK. The following command installs the ASP.NET Core runtime for maximum compatibility. The ASP.NET Core runtime also includes the standard .NET runtime. ```bash -./dotnet-install.sh --channel 7.0 --runtime aspnetcore +./dotnet-install.sh --channel 8.0 --runtime aspnetcore ``` ## Docker diff --git a/docs/core/install/windows.md b/docs/core/install/windows.md index 2b35c92e72bd7..aa7dbf0a9adbd 100644 --- a/docs/core/install/windows.md +++ b/docs/core/install/windows.md @@ -3,7 +3,7 @@ title: Install .NET on Windows description: Learn about the different ways you can install .NET and which versions of Windows support .NET. author: adegeo ms.author: adegeo -ms.date: 12/21/2022 +ms.date: 11/13/2023 --- # Install .NET on Windows @@ -16,20 +16,20 @@ ms.date: 12/21/2022 In this article, you'll learn how to install .NET on Windows. .NET is made up of the runtime and the SDK. The runtime is used to run a .NET app and may or may not be included with the app. The SDK is used to create .NET apps and libraries. The .NET runtime is always installed with the SDK. -The latest version of .NET is 7. +The latest version of .NET is 8. > [!div class="button"] > [Download .NET](https://dotnet.microsoft.com/download/dotnet) -There are two types of supported releases, Long Term Support (LTS) releases or Standard Term Support (STS). The quality of all releases is the same. The only difference is the length of support. LTS releases get free support and patches for 3 years. STS releases get free support and patches for 18 months. For more information, see [.NET Support Policy](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). +There are two types of supported releases: Long Term Support (LTS) releases and Standard Term Support (STS) releases. The quality of all releases is the same. The only difference is the length of support. LTS releases get free support and patches for 3 years. STS releases get free support and patches for 18 months. For more information, see [.NET Support Policy](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). The following table lists the support status of each version of .NET (and .NET Core): | ✔️ Supported | ❌ Unsupported | |-------------|---------------| -| 7 (STS) | 5 | -| 6 (LTS) | 3.1 | -| | 3.0 | +| 8 (LTS) | 5 | +| 7 (STS) | 3.1 | +| 6 (LTS) | 3.0 | | | 2.1 | | | 2.0 | | | 1.1 | @@ -124,15 +124,15 @@ For more information, see [Standard Installer Command-Line Options](/windows/win The [dotnet-install scripts](../tools/dotnet-install-script.md) are used for CI automation and non-admin installs of the runtime. You can download the script from the [dotnet-install script reference page](../tools/dotnet-install-script.md). -The script defaults to installing the latest [long term support (LTS)](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) version, which is .NET 6. You can choose a specific release by specifying the `Channel` switch. Include the `Runtime` switch to install a runtime. Otherwise, the script installs the SDK. +The script defaults to installing the latest [long term support (LTS)](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) version, which is .NET 8. You can choose a specific release by specifying the `Channel` switch. Include the `Runtime` switch to install a runtime. Otherwise, the script installs the SDK. The following command installs the ASP.NET Core runtime for maximum compatibility. The ASP.NET Core runtime also includes the standard .NET runtime. ```powershell -dotnet-install.ps1 -Channel 7.0 -Runtime aspnetcore +dotnet-install.ps1 -Channel 8.0 -Runtime aspnetcore ``` -Install the SDK by omitting the `-Runtime` switch. The `-Channel` switch is set in this example to `STS`, which installs the latest Standard Term Support version (.NET 7). +Install the SDK by omitting the `-Runtime` switch. The `-Channel` switch is set in this example to `STS`, which installs the latest Standard Term Support version, which is .NET 7. ```powershell dotnet-install.ps1 -Channel STS @@ -144,6 +144,7 @@ If you're using Visual Studio to develop .NET apps, the following table describe | .NET SDK version | Visual Studio version | | --------------------- | ------------------------------------------ | +| 8 | Visual Studio 2022 version 17.8 or higher. | | 7 | Visual Studio 2022 version 17.4 or higher. | | 6 | Visual Studio 2022 version 17.0 or higher. | | 5 | Visual Studio 2019 version 16.8 or higher. | @@ -163,6 +164,8 @@ Visual Studio can install the latest .NET SDK and runtime. > [!div class="button"] > [Download Visual Studio](https://www.visualstudio.com/downloads/?utm_medium=microsoft&utm_source=learn.microsoft.com&utm_campaign=button+cta&utm_content=download+vs2019). +For more information, see [.NET SDK, MSBuild, and Visual Studio versioning](../porting/versioning-sdk-msbuild-vs.md). + ### Select a workload When installing or modifying Visual Studio, select one or more of the following workloads, depending on the kind of application you're building: @@ -183,21 +186,21 @@ Windows 10 versions end-of-service dates are segmented by edition. Only **Home** > [!TIP] > A `+` symbol represents the minimum version. -| Operating System | .NET 7 | .NET 6 | -|----------------------------------------------|--------|--------| -| Windows 11 | ✔️ | ✔️ | -| Windows Server 2022 | ✔️ | ✔️ | -| Windows Server, Version 1903 or later | ✔️ | ✔️ | -| Windows 10, Version 1607 or later | ✔️ | ✔️ | -| Windows 8.1 | ❌ | ✔️ | -| Windows 7 SP1 [ESU][esu] | ❌ | ✔️ | -| Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012| ✔️ | -| Windows Server Core 2012 R2 | ✔️ | ✔️ | -| Windows Server Core 2012 | ✔️ | ✔️ | -| Nano Server, Version 1809+ | ✔️ | ✔️ | -| Nano Server, Version 1803 | ❌ | ❌ | - -For more information about .NET 7 supported operating systems, distributions, and lifecycle policy, see [.NET 7 Supported OS Versions](https://github.com/dotnet/core/blob/main/release-notes/7.0/supported-os.md). +| Operating System | .NET 8 | .NET 7 | .NET 6 | +|---------------------------------------|--------|--------|--------| +| Windows 11 | ✔️ | ✔️ | ✔️ | +| Windows Server 2022 | ✔️ | ✔️ | ✔️ | +| Windows Server, Version 1903 or later | ✔️ | ✔️ | ✔️ | +| Windows 10, Version 1607 or later | ✔️ | ✔️ | ✔️ | +| Windows 8.1 | ❌ | ❌ | ✔️ | +| Windows 7 SP1 [ESU][esu] | ❌ | ❌ | ✔️ | +| Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012| | ✔️ | +| Windows Server Core 2012 R2 | ✔️ | ✔️ | ✔️ | +| Windows Server Core 2012 | ✔️ | ✔️ | ✔️ | +| Nano Server, Version 1809+ | ✔️ | ✔️ | ✔️ | +| Nano Server, Version 1803 | ❌ | ❌ | ❌ | + +For more information about .NET 8 supported operating systems, distributions, and lifecycle policy, see [.NET 8 Supported OS Versions](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md). ## Unsupported releases @@ -246,6 +249,8 @@ The following table describes which versions of .NET are supported on an Arm-bas | .NET Version | Architecture | SDK | Runtime | [Path conflict](#path-conflicts) | |--------------|--------------|-----|---------|----------------------------------| +| 8 | Arm64 | Yes | Yes | No | +| 8 | x64 | Yes | Yes | No | | 7 | Arm64 | Yes | Yes | No | | 7 | x64 | Yes | Yes | No | | 6 | Arm64 | Yes | Yes | No | @@ -257,7 +262,7 @@ Starting with .NET 6, the x64 and Arm64 versions of the .NET SDK exist independe ### Path differences -On an Arm-based Windows PC, all Arm64 versions of .NET are installed to the normal _C:\\Program Files\\dotnet\\_ folder. However, when you install the **x64** version of .NET 6 SDK or .NET 7 SDK, it's installed to the _C:\\Program Files\\dotnet\\x64\\_ folder. +On an Arm-based Windows PC, all Arm64 versions of .NET are installed to the normal _C:\\Program Files\\dotnet\\_ folder. However, when you install the **x64** version of the .NET SDK, it's installed to the _C:\\Program Files\\dotnet\\x64\\_ folder. ### Path conflicts @@ -269,6 +274,23 @@ Environment variables that add .NET to system path, such as the `PATH` variable, ## Dependencies +# [.NET 8](#tab/net80) + +The following Windows versions are supported with .NET 8: + +> [!NOTE] +> A `+` symbol represents the minimum version. + +| OS | Version | Architectures | +|---------------------|---------------|-----------------| +| Windows 11 | 22000+ | x64, x86, Arm64 | +| Windows 10 Client | 1607+ | x64, x86, Arm64 | +| Windows Server | 2012+ | x64, x86 | +| Windows Server Core | 2012+ | x64, x86 | +| Nano Server | 1809+ | x64 | + +For more information about .NET 8 supported operating systems, distributions, and lifecycle policy, see [.NET 8 Supported OS Versions](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md). + # [.NET 7](#tab/net70) The following Windows versions are supported with .NET 7: @@ -362,7 +384,7 @@ Most likely you've installed both the x86 (32-bit) and x64 (64-bit) versions of ```cmd > where.exe dotnet - C:\Program Files (x86)\dotnet\dotnet.exe + C:\Program Files (x86)\dotnet\dotnet.exe C:\Program Files\dotnet\dotnet.exe ``` diff --git a/docs/core/porting/versioning-sdk-msbuild-vs.md b/docs/core/porting/versioning-sdk-msbuild-vs.md index f83328d59eba7..50bb8636a5f7a 100644 --- a/docs/core/porting/versioning-sdk-msbuild-vs.md +++ b/docs/core/porting/versioning-sdk-msbuild-vs.md @@ -8,13 +8,13 @@ ms.date: 06/10/2021 --- # .NET SDK, MSBuild, and Visual Studio versioning -Understanding the versioning of the .NET SDK and how it relates to Visual Studio and MSBuild can be confusing. MSBuild versions with Visual Studio, but is also included in the .NET SDK. The SDK has a minimum version of MSBuild and Visual Studio that it works with, and it won't load in a version of Visual Studio that's older than that minimum version. +The versioning of the .NET SDK and how it relates to Visual Studio and MSBuild can be confusing. MSBuild versions with Visual Studio, but is also included in the .NET SDK. The SDK has a minimum version of MSBuild and Visual Studio that it works with, and it won't load in a version of Visual Studio that's older than that minimum version. ## Versioning -The first part of the .NET SDK version matches the .NET version that it includes, runs on, and targets by default. The feature band starts at 1 and increases for each quarterly Visual Studio minor release. The patch version increments with each month's servicing updates. +The first part of the .NET SDK version matches the .NET version that it includes, runs on, and targets by default. The feature band starts at 1 and increases for each quarterly Visual Studio minor release. The patch version increments with each month's servicing updates. -For example, version 5.0.203 ships with .NET 5, is the second minor Visual Studio release since 5.0.100 first came out, and is the third patch since 5.0.200 released. +For example, version 7.0.203 ships with .NET 7, is the second minor Visual Studio release since 7.0.100 first came out, and is the third patch since 7.0.200 released. ## Lifecycle @@ -48,7 +48,7 @@ The support timeframe for the SDK typically matches that of the Visual Studio ve > > .1xx SDK feature band is supported throughout the lifecycle of major .NET versions. During the extended support period, support is limited to security fixes and minimal high-priority non-security fixes for Linux only. To learn more about the reasoning for this extended support, refer to this [document](https://github.com/dotnet/source-build#support). > -> 1 Visual Studio 17.3 went out of support in Nov 2022. 6.0.4xx will be in support for the life of .NET 6 as a stand-alone release. +> 1 Visual Studio 2022 version 17.3 went out of support in Nov 2022. 6.0.4xx will be in support for the life of .NET 6 as a standalone release. > > 2 With .NET 6, the.NET 6.0.100 SDK can be used in version 16.11 for **downlevel** targeting. This means that you're not forced to update your SDK and Visual Studio versions simultaneously. However, you won't be able to target .NET 6 because of limitations in 6.0 features and C# 10 features in version 16.11. This compatibility is specifically for targeting 5.0 and below. > @@ -63,7 +63,7 @@ The support timeframe for the SDK typically matches that of the Visual Studio ve Starting with .NET SDK 7.0.100 and .NET SDK 6.0.300, a policy has been put into place regarding which versions of MSBuild and Visual Studio a given version of the .NET SDK will run in. The policy is: - Each new TargetFramework **requires** a new Visual Studio version or a new `dotnet` version. -- The first version of Visual Studio that supports a new TargetFramework becomes a floor for the feature bands of that SDK for Roslyn API surface, msbuild targets, source generators, analyzers, and so on. +- The first version of Visual Studio that supports a new TargetFramework becomes a floor for the feature bands of that SDK for Roslyn API surface, MSBuild targets, source generators, analyzers, and so on. - The first version of a new .NET SDK that supports a new TargetFramework can still be used with the prior version of Visual Studio to allow one quarter for tooling and infrastructure (for example, actions and pipelines) to migrate. | SDK | Visual Studio version
the SDK ships with | Minimum Visual Studio version | Max TargetFramework in
minimum Visual Studio version | Max TargetFramework in `dotnet` |