You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: "Breaking change: Version requirements for .NET 10 SDK"
3
+
description: Learn about the breaking change in the .NET 10 SDK where specific versions of Visual Studio and MSBuild are required.
4
+
ms.date: 10/08/2025
5
+
ai-usage: ai-generated
6
+
---
7
+
# Version requirements for .NET 10 SDK
8
+
9
+
Per the [published support rules](../../../porting/versioning-sdk-msbuild-vs.md#targeting-and-support-rules), the minimum Visual Studio and MSBuild version for each new major release is updated with a one quarter delay. For the .NET 10 release:
10
+
11
+
- 10.0.100 requires version 17.14 to be loaded but only supports targeting .NET 9 in that version.
12
+
- To target `net10.0`, you must use version 18.0 or later.
13
+
14
+
## Version introduced
15
+
16
+
.NET 10 RC 2
17
+
18
+
## Previous behavior
19
+
20
+
The previous minimum Visual Studio version for .NET 10 previews was 17.13 to allow time for release and more adoption of Visual Studio version 17.14.
21
+
22
+
## New behavior
23
+
24
+
- .NET 10.0.100 will only load on Visual Studio version 17.14 or later.
25
+
- .NET 10.0.100 warns when targeting `net10.0` on Visual Studio version 17.14. To target `net10.0`, you must use Visual Studio version 18.0 or later.
26
+
27
+
## Type of breaking change
28
+
29
+
This change is a [behavioral change](../../categories.md#behavioral-change).
30
+
31
+
## Reason for change
32
+
33
+
This change is part of the standard support policy for the SDK as not all prior versions of Visual Studio and MSBuild can be supported.
34
+
35
+
## Recommended action
36
+
37
+
Upgrade to Visual Studio 2026 to target `net10.0`. If you only need to target `net9.0` or earlier, you can use Visual Studio version 17.14 or later.
38
+
39
+
## Affected APIs
40
+
41
+
N/A
42
+
43
+
## See also
44
+
45
+
-[Targeting and support rules](../../../porting/versioning-sdk-msbuild-vs.md#targeting-and-support-rules)
Copy file name to clipboardExpand all lines: docs/core/porting/versioning-sdk-msbuild-vs.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Learn about the versioning relationship between the .NET SDK and MS
4
4
author: StephenBonikowsky
5
5
ms.author: stebon
6
6
ms.custom: updateeachrelease
7
-
ms.date: 11/06/2024
7
+
ms.date: 10/08/2025
8
8
---
9
9
# .NET SDK, MSBuild, and Visual Studio versioning
10
10
@@ -19,7 +19,7 @@ For example, version 7.0.203 ships with .NET 7, is the second minor Visual Studi
19
19
An installation of Visual Studio includes a single matching copy of the .NET SDK. If you update your Visual Studio instance, the .NET SDK installed by Visual Studio is also updated, including across .NET SDK feature bands and major bands. If you want to use a different .NET SDK than what's installed by Visual Studio, you can install it from the [.NET download page](https://aka.ms/dotnet/download), and Visual Studio upgrade won't touch that version. You're responsible for updating that copy of the .NET SDK from then on.
20
20
21
21
> [!NOTE]
22
-
The .NET SDK supports targeting down-level versions of .NET, so we recommend always updating your .NET SDK along with your Visual Studio version.
22
+
> The .NET SDK supports targeting down-level versions of .NET, so we recommend always updating your .NET SDK along with your Visual Studio version.
23
23
24
24
## Lifecycle
25
25
@@ -74,7 +74,7 @@ The support timeframe for the SDK typically matches that of the Visual Studio ve
74
74
75
75
## Targeting and support rules
76
76
77
-
A the following policy dictates which versions of MSBuild and Visual Studio a given version of the .NET SDK will run in:
77
+
The following policy dictates which versions of MSBuild and Visual Studio a given version of the .NET SDK will run in:
78
78
79
79
- Each new TargetFramework **requires** a new Visual Studio version or a new `dotnet` version.
80
80
- 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.
@@ -89,13 +89,16 @@ A the following policy dictates which versions of MSBuild and Visual Studio a gi
89
89
| 9.0.100 | 17.12 | 17.11 | Net8.0 | Net9.0 |
90
90
| 9.0.200 | 17.13 | 17.12 | Net9.0 | Net9.0 |
91
91
| 9.0.300 | 17.14 | 17.12 | Net9.0 | Net9.0 |
92
+
| 10.0.100 | 18.0 | 17.14 | Net9.0 | Net10.0 |
92
93
93
94
> [!NOTE]
94
95
> The table depicts how these versioning rules are applied, starting with .NET SDK 7.0.100 and .NET SDK 6.0.300. It also depicts how the policy would have applied to previously shipped versions of the .NET SDK, had it been in place then. However, the requirements for previous versions of the SDK don't change—that is, the minimum required version of Visual Studio for .NET SDK 6.0.100 or 6.0.200 remains 16.10.
95
96
>
96
97
> Targeting `net8.0` is officially supported in Visual Studio 17.8+ only.
97
98
>
98
99
> Targeting `net9.0` is officially supported in Visual Studio 17.12+ only.
100
+
>
101
+
> Targeting `net10.0` is officially supported in Visual Studio 18.0+ only.
99
102
100
103
To ensure consistent tooling, you should use `dotnet build` rather than `msbuild` to build your application when possible.
101
104
@@ -111,6 +114,7 @@ Major versions of the .NET SDK are typically released within a few days of a Vis
0 commit comments