From 40ec140f9e64f534c3792c15960a4a780ecdf811 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Mon, 2 Feb 2026 23:02:26 -0800 Subject: [PATCH 01/12] Add information about changes to Win11 and 3.5 --- .../install/dotnet-35-windows-11-faq.yml | 73 +++++++++++++++++++ .../framework/install/dotnet-35-windows-11.md | 57 +++++++++++++++ docs/framework/install/dotnet-35-windows.md | 36 ++++++++- .../framework/install/guide-for-developers.md | 2 +- .../install/includes/dotnet-35-find-update.md | 8 ++ .../install/includes/dotnet-35-installer.md | 9 +++ .../install/on-windows-and-server.md | 2 + docs/framework/toc.yml | 10 ++- 8 files changed, 192 insertions(+), 5 deletions(-) create mode 100644 docs/framework/install/dotnet-35-windows-11-faq.yml create mode 100644 docs/framework/install/dotnet-35-windows-11.md create mode 100644 docs/framework/install/includes/dotnet-35-find-update.md create mode 100644 docs/framework/install/includes/dotnet-35-installer.md diff --git a/docs/framework/install/dotnet-35-windows-11-faq.yml b/docs/framework/install/dotnet-35-windows-11-faq.yml new file mode 100644 index 0000000000000..442c1cba587c6 --- /dev/null +++ b/docs/framework/install/dotnet-35-windows-11-faq.yml @@ -0,0 +1,73 @@ +### YamlMime:FAQ +metadata: + title: .NET Framework. 3.5 on Windows 11 FAQ + description: "This article answers frequently asked questions about .NET Framework 3.5 on Windows 11." + titleSuffix: "" + ms.topic: faq + ms.date: 02/02/2026 + ai-usage: ai-assisted + +title: .NET Framework 3.5 on Windows 11 FAQ +summary: | + This article answers frequently asked questions about .NET Framework 3.5 on Windows 11. For more information, see [Install .NET Framework 3.5 on Windows 11](dotnet-35-windows-11.md). + + [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +sections: + - name: Availability and lifecycle + questions: + - question: Is .NET Framework 3.5 included in Windows 11? + answer: | + Your Windows 11 version determines availability: + + - Windows 11 Insider Preview Build 27965 and later versions. + + No. Windows doesn't include .NET Framework 3.5 as a built-in or optional component. + + - Windows 11 25H2 and earlier versions. + + Yes. Windows includes .NET Framework 3.5 as a built-in optional component. Enable it through Windows Features on Demand. + + - question: How long is the .NET Framework 3.5 standalone installer supported? + answer: Support ends January 9, 2029, according to the official [Microsoft .NET Framework lifecycle policy](/lifecycle/products/net-framework). + + - question: When I upgrade to a newer version of Windows, is .NET Framework 3.5 included or persisted? + answer: No. When you upgrade Windows to the next release, reinstall .NET Framework 3.5. + + - name: Installation and deployment + questions: + - question: How do I get .NET Framework 3.5 if my application requires it? + answer: Use the standalone installer. For more details, including a link to the installer, see [Announcing Windows 11 Insider Preview Build 27965 (Canary Channel)](https://blogs.windows.com/windows-insider/2025/10/08/announcing-windows-11-insider-preview-build-27965-canary-channel/). + + - question: Are silent installs supported for the new .NET Framework 3.5 standalone installer? + answer: Yes. Use `/q` and `/quiet` command-line options for unattended deployment. + + - question: Can I apply .NET Framework 3.5 to an offline Windows image? + answer: No. Offline installation and servicing isn't supported. .NET Framework 3.5 is no longer an optional Windows Feature on Demand component, so DISM can't manage it. Use online servicing to modify a Windows installation. For more information, see [Modify a Windows image](/windows-hardware/manufacture/desktop/modify-an-image?view=windows-11). + + - name: Migration and support + questions: + - question: What is the recommended migration path? + answer: | + Update your application from .NET Framework to modern .NET, such as .NET 10. If you can't move to .NET, update your application to .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/net-framework). + + - question: Where can enterprises and ISVs get additional help with compatibility? + answer: | + Use the [Microsoft FastTrack – App Assure](/microsoft-365/fasttrack/windows-365-and-app-assure#app-assure) program for personalized migration and compatibility assistance. + + - name: Troubleshooting + questions: + - question: | + When I try to run a legacy .NET Framework 3.5 application or its installer, I see a "Program Compatibility Assistant" or a Microsoft .NET Framework runtime message box. Is this expected? + answer: | + Yes. Your application or its installer requires .NET Framework 3.5 to run. The message box links to this document. + + - question: | + My .NET Framework 3.5 application displays an unclear message, like "runtime error" without further guidance when I don't have .NET 3.5 installed. Is this expected? + answer: | + Legacy applications might handle the missing dependency in various ways, including unclear messages. Use the mitigation guidance in this document or contact your software vendor for more information. + +additionalContent: | + ## Related content + + To learn more, see [What is GitHub Copilot app modernization?](overview.md). diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md new file mode 100644 index 0000000000000..522e526d83b82 --- /dev/null +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -0,0 +1,57 @@ +--- +title: Install .NET Framework 3.5 on Windows 11 +description: Learn how to install .NET Framework 3.5 on Windows 11. .NET Framework 3.5 can run apps that target .NET Framework 1.0 through 3.5. +ms.date: 02/02/2026 +ai-usage: ai-assisted +--- +# Install .NET Framework 3.5 on Windows 11 + +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +## .NET Framework 3.5 optional components + +The following optional .NET Framework 3.5 components were previously available as Windows Features on Demand. Windows 11 removes these components: + +- ASP.NET 3.5 +- .NET Extensibility 3.5 +- WCF HTTP Activation +- WCF non-HTTP Activation + +## Enable ASP.NET 3.5 and WCF in IIS + +ASP.NET 3.5 and WCF require additional registration to run in IIS. + +Enable ASP.NET 3.5 on your device using the [`Enable-ASPNet35.ps1`](https://go.microsoft.com/fwlink/?linkid=2348600&clcid=0x409) PowerShell script. The script enables the functionality of the following optional components that have been removed from Windows: + +- ASP.NET 3.5 +- .NET Extensibility 3.5 + +> [!NOTE] +> The script only restores the functionality of these optional components so that applications that depend on them can continue working. The optional components are still missing from Windows 11 and tools like DISM won't detect these optional components as present after running the script. + +To run the script, make sure your device meets these prerequisites: + +- Windows Insider Preview Build 27965 or later +- Windows PowerShell 5.1 +- .NET Framework 3.5 +- The Web Server (IIS) feature or role enabled, along with the **ISAPI Filters** and **ISAPI Extensions** optional components +- An administrative PowerShell command window + +To run the script: + +1. Download the [`Enable-ASPNet35.ps1`](https://go.microsoft.com/fwlink/?linkid=2348600&clcid=0x409) script to a local directory. +1. Open a Windows PowerShell command window **as Administrator**. +1. Change the execution policy to allow scripts downloaded from the Internet and signed by trusted publishers: + + ```powershell + Set-ExecutionPolicy RemoteSigned + ``` + + For more information about execution policy settings, see [Set-ExecutionPolicy](/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-5.1). + +1. Go to the directory where you downloaded the script. +1. Run the script: + + ```powershell + .\Enable-ASPNet35.ps1 + ``` diff --git a/docs/framework/install/dotnet-35-windows.md b/docs/framework/install/dotnet-35-windows.md index affb0d3078c6a..1bd93c9d29493 100644 --- a/docs/framework/install/dotnet-35-windows.md +++ b/docs/framework/install/dotnet-35-windows.md @@ -1,7 +1,7 @@ --- title: Install .NET Framework 3.5 on Windows description: Learn how to install .NET Framework 3.5 on Windows and Windows Server. .NET Framework 3.5 can run apps that target .NET Framework 1.0 through 3.5. -ms.date: 07/10/2025 +ms.date: 02/02/2026 ai-usage: ai-assisted --- # Install .NET Framework 3.5 on Windows and Windows Server @@ -13,10 +13,18 @@ If you're a developer that requires .NET Framework 3.5, see the section [Develop > [!TIP] > You might be able to use a config file to force the app to run on .NET Framework 4. For more information, see [Migration: Retarget or recompile](../migration-guide/migrating-from-the-net-framework-1-1.md#retarget-or-recompile). +## Install .NET Framework 3.5 on Windows 11 Insiders Preview + +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] + ## Install .NET Framework 3.5 on demand You might see the following configuration dialog if you try to run an app that requires an older version of .NET Framework. Depending on your version of Windows, the dialog might be slightly different. Choose **Download and install this feature** to enable .NET Framework 3.5. This option requires an internet connection. +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] + :::image type="content" source="./media/dotnet-35-windows/dotnet-framework-installation-dialog.png" alt-text="Screenshot of the .NET Framework installation dialog."::: ### Why am I getting this pop-up? @@ -27,6 +35,8 @@ You might see the following configuration dialog if you try to run an app that r Enable .NET Framework 3.5 through the **Add Roles and Features Wizard**. +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] + 1. Press the Start :::image type="icon" source="media/dotnet-35-windows/windows-keyboard-logo.png" border="false"::: button on the taskbar. 1. Search for **Add Roles and Features Wizard** and open it. 1. Search for **Windows Features** and open it. The **Turn Windows features on or off** dialog box appears. @@ -38,7 +48,9 @@ Enable .NET Framework 3.5 through the **Add Roles and Features Wizard**. ## Enable .NET Framework 3.5 on Windows -You can enable the .NET Framework 3.5 through the Windows Control Panel. This option requires an internet connection. +You can enable the .NET Framework 3.5 through the Windows Control Panel. This option requires an internet connection. If you're using Windows 11, consider the [.NET Framework 3.5 on Windows 11 FAQ](dotnet-35-windows-11-faq.yml). + +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] 1. Press the Start :::image type="icon" source="media/dotnet-35-windows/windows-keyboard-logo.png" border="false"::: button on the taskbar. 1. Search for **Windows Features** and open it. The **Turn Windows features on or off** dialog box appears. @@ -52,6 +64,14 @@ You don't need to select the child items for **Windows Communication Foundation The .NET Framework 3.5 SP1 offline installer is available for Windows versions **prior to Windows 10 and Windows Server 2016**. For more information, see [.NET Framework 3.5 SP1 download page](https://dotnet.microsoft.com/download/dotnet-framework/net35-sp1?wt.mc_id=install-docs). +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] + +### Windows 11 + +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +### Windows 10 + Starting with Windows 10 and Windows Server 2016 operating systems, the only supported way of installing .NET Framework 3.5 in an offline mode is by using the original installation media's _:::no-loc text="cab":::_ files. For more information, see [Microsoft .NET Framework 3.5 deployment considerations](/windows-hardware/manufacture/desktop/microsoft-net-framework-35-deployment-considerations). ## Troubleshoot the installation @@ -65,6 +85,18 @@ If you still can't resolve your installation issue or you don't have an internet ## Developers and .NET Framework 3.5 +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +Additionally, the optional components that rely on .NET Framework 3.5 have also been removed: + +- ASP.NET 3.5 +- .NET Extensibility 3.5 +- WCF HTTP Activation +- WCF non-HTTP Activation + +> [!IMPORTANT] +> Microsoft strongly recommends you upgrade your application from .NET Framework to modern .NET, such as .NET 10. If you can't move to .NET, upgrade your application to .NET Framework 4.8 or 4.8.1. For more information about upgrading from .NET Framework 3.5, see [.NET Framework 4 migration issues](../migration-guide/net-framework-4-migration-issues.md) and [Overview of porting from .NET Framework to .NET](../../core/porting/framework-overview.md). + If you're a developer that maintains existing software and you need to use .NET Framework 3.5, enable it with the following steps: 1. Install .NET Framework 3.5 on your system using the instructions in this article. diff --git a/docs/framework/install/guide-for-developers.md b/docs/framework/install/guide-for-developers.md index 5c654f5b2754d..96771cae6eb21 100644 --- a/docs/framework/install/guide-for-developers.md +++ b/docs/framework/install/guide-for-developers.md @@ -1,7 +1,7 @@ --- title: "Install the .NET Framework developer pack or redistributable" description: "Developers can download and install the .NET Framework developer pack and targeting pack. You can include the .NET Framework redistributable with your apps." -ms.date: 07/10/2025 +ms.date: 02/02/2026 helpviewer_keywords: - ".NET Framework redistributable package, downloading" - ".NET Framework, installing" diff --git a/docs/framework/install/includes/dotnet-35-find-update.md b/docs/framework/install/includes/dotnet-35-find-update.md new file mode 100644 index 0000000000000..b8541d7744fb6 --- /dev/null +++ b/docs/framework/install/includes/dotnet-35-find-update.md @@ -0,0 +1,8 @@ +--- +ms.author: adegeo +ms.date: 02/02/2026 +ms.topic: include +--- + +> [!IMPORTANT] +> .NET Framework 3.5 was released in 2008. Before installing .NET Framework 3.5, try to find an updated version of your software that uses a new version of .NET Framework or that uses modern .NET. diff --git a/docs/framework/install/includes/dotnet-35-installer.md b/docs/framework/install/includes/dotnet-35-installer.md new file mode 100644 index 0000000000000..e682db2dae41e --- /dev/null +++ b/docs/framework/install/includes/dotnet-35-installer.md @@ -0,0 +1,9 @@ +--- +ms.author: adegeo +ms.date: 02/02/2026 +ms.topic: include +--- + +Starting with Windows 11 Insider Preview Build 27965, .NET Framework 3.5 is no longer included as Windows Feature on Demand optional component. Installation of .NET Framework 3.5 is done through a standalone installer (also known as an offline installer). For more information, see [Announcing Windows 11 Insider Preview Build 27965 (Canary Channel)](https://blogs.windows.com/windows-insider/2025/10/08/announcing-windows-11-insider-preview-build-27965-canary-channel/). + +For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). diff --git a/docs/framework/install/on-windows-and-server.md b/docs/framework/install/on-windows-and-server.md index 2b544b59a892c..86c37b5816a3f 100644 --- a/docs/framework/install/on-windows-and-server.md +++ b/docs/framework/install/on-windows-and-server.md @@ -30,6 +30,8 @@ The following versions of .NET Framework are still supported: .NET Framework 3.5 is still supported by Microsoft, even though it's an older version of .NET Framework. However, only the .NET Framework 3.5 runtime is supported, which runs apps. Developing new apps that target .NET Framework 3.5 isn't supported. This version of .NET Framework supports running apps that target versions 1.0 through 3.5, and can be installed alongside .NET Framework 4. +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + If you try to run an app that targets .NET Framework 1.0 through 3.5, and .NET Framework 3.5 is missing, you're prompted to install it. For more information, see [Install .NET Framework 3.5 on Windows](dotnet-35-windows.md). ### .NET Framework 4.x diff --git a/docs/framework/toc.yml b/docs/framework/toc.yml index 9caa626263c34..5120ef79ededc 100644 --- a/docs/framework/toc.yml +++ b/docs/framework/toc.yml @@ -34,7 +34,13 @@ items: - name: Troubleshoot 'This application could not be started' href: install/application-not-started.md - name: .NET Framework 3.5 - href: install/dotnet-35-windows.md + items: + - name: Windows 11 + href: install/dotnet-35-windows-11.md + - name: Windows 10, Windows Server, and other Windows + href: install/dotnet-35-windows.md + - name: Windows 11 FAQ for .NET Framework 3.5 + href: install/dotnet-35-windows-11-faq.yml - name: Migration guide items: - name: Overview @@ -108,7 +114,7 @@ items: href: migration-guide/version-compatibility.md - name: Configure an app to support .NET Framework 4 or later href: migration-guide/how-to-configure-an-app-to-support-net-framework-4-or-4-5.md - - name: Migrate from .NET Framework 1.1 + - name: Migrate from .NET Framework 1.1 - 3.5 href: migration-guide/migrating-from-the-net-framework-1-1.md - name: .NET Framework 4 migration issues href: migration-guide/net-framework-4-migration-issues.md From 6ca124bf8934f28d06f049167e95b5fd878a87a4 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Mon, 2 Feb 2026 23:14:42 -0800 Subject: [PATCH 02/12] Fix build errors --- docs/framework/install/dotnet-35-windows-11-faq.yml | 8 +++++--- docs/framework/install/dotnet-35-windows-11.md | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/framework/install/dotnet-35-windows-11-faq.yml b/docs/framework/install/dotnet-35-windows-11-faq.yml index 442c1cba587c6..f16e86c465bad 100644 --- a/docs/framework/install/dotnet-35-windows-11-faq.yml +++ b/docs/framework/install/dotnet-35-windows-11-faq.yml @@ -29,7 +29,7 @@ sections: Yes. Windows includes .NET Framework 3.5 as a built-in optional component. Enable it through Windows Features on Demand. - question: How long is the .NET Framework 3.5 standalone installer supported? - answer: Support ends January 9, 2029, according to the official [Microsoft .NET Framework lifecycle policy](/lifecycle/products/net-framework). + answer: Support ends January 9, 2029, according to the official [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). - question: When I upgrade to a newer version of Windows, is .NET Framework 3.5 included or persisted? answer: No. When you upgrade Windows to the next release, reinstall .NET Framework 3.5. @@ -49,7 +49,7 @@ sections: questions: - question: What is the recommended migration path? answer: | - Update your application from .NET Framework to modern .NET, such as .NET 10. If you can't move to .NET, update your application to .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/net-framework). + Update your application from .NET Framework to modern .NET, such as .NET 10. If you can't move to .NET, update your application to .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). - question: Where can enterprises and ISVs get additional help with compatibility? answer: | @@ -70,4 +70,6 @@ sections: additionalContent: | ## Related content - To learn more, see [What is GitHub Copilot app modernization?](overview.md). + - [Install .NET Framework 3.5 on Windows 11](dotnet-35-windows-11.md) + - [Developers and .NET Framework 3.5](dotnet-35-windows.md#developers-and-net-framework-35) + diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 522e526d83b82..32d36e10042d5 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -47,7 +47,7 @@ To run the script: Set-ExecutionPolicy RemoteSigned ``` - For more information about execution policy settings, see [Set-ExecutionPolicy](/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-5.1). + For more information about execution policy settings, see [Set-ExecutionPolicy](/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-5.1&preserve-view=true). 1. Go to the directory where you downloaded the script. 1. Run the script: From a15ad6d952dae0512af6d7214121860a6afad756 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 09:57:54 -0800 Subject: [PATCH 03/12] Adjust headers a little bit --- docs/framework/install/dotnet-35-windows-11.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 32d36e10042d5..7a6c7cf15dd30 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -17,7 +17,7 @@ The following optional .NET Framework 3.5 components were previously available a - WCF HTTP Activation - WCF non-HTTP Activation -## Enable ASP.NET 3.5 and WCF in IIS +## How to enable ASP.NET 3.5 and WCF in IIS ASP.NET 3.5 and WCF require additional registration to run in IIS. @@ -29,7 +29,7 @@ Enable ASP.NET 3.5 on your device using the [`Enable-ASPNet35.ps1`](https://go.m > [!NOTE] > The script only restores the functionality of these optional components so that applications that depend on them can continue working. The optional components are still missing from Windows 11 and tools like DISM won't detect these optional components as present after running the script. -To run the script, make sure your device meets these prerequisites: +### Prerequisites - Windows Insider Preview Build 27965 or later - Windows PowerShell 5.1 @@ -37,7 +37,7 @@ To run the script, make sure your device meets these prerequisites: - The Web Server (IIS) feature or role enabled, along with the **ISAPI Filters** and **ISAPI Extensions** optional components - An administrative PowerShell command window -To run the script: +### Run the script 1. Download the [`Enable-ASPNet35.ps1`](https://go.microsoft.com/fwlink/?linkid=2348600&clcid=0x409) script to a local directory. 1. Open a Windows PowerShell command window **as Administrator**. From edd6946498ede9f015a8ed7873d6cd4592623a2f Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 12:23:15 -0800 Subject: [PATCH 04/12] Restructured a bit and added more info to win 11 article --- .../install/dotnet-35-windows-11-faq.yml | 4 +-- .../framework/install/dotnet-35-windows-11.md | 32 +++++++++++++++++-- docs/framework/install/dotnet-35-windows.md | 20 ++++-------- .../install/includes/dotnet-35-find-update.md | 2 +- .../dotnet-35-windows-11-caution-version.md | 8 +++++ docs/framework/toc.yml | 4 +-- 6 files changed, 49 insertions(+), 21 deletions(-) create mode 100644 docs/framework/install/includes/dotnet-35-windows-11-caution-version.md diff --git a/docs/framework/install/dotnet-35-windows-11-faq.yml b/docs/framework/install/dotnet-35-windows-11-faq.yml index f16e86c465bad..dcc41db52fbb1 100644 --- a/docs/framework/install/dotnet-35-windows-11-faq.yml +++ b/docs/framework/install/dotnet-35-windows-11-faq.yml @@ -43,13 +43,13 @@ sections: answer: Yes. Use `/q` and `/quiet` command-line options for unattended deployment. - question: Can I apply .NET Framework 3.5 to an offline Windows image? - answer: No. Offline installation and servicing isn't supported. .NET Framework 3.5 is no longer an optional Windows Feature on Demand component, so DISM can't manage it. Use online servicing to modify a Windows installation. For more information, see [Modify a Windows image](/windows-hardware/manufacture/desktop/modify-an-image?view=windows-11). + answer: No. Offline installation and servicing isn't supported because .NET Framework 3.5 is no longer an optional Windows Feature on Demand component. DISM and other tools that customize offline Windows deployment images can't manage .NET Framework 3.5. Use **online servicing** to modify a Windows installation. For more information, see [Modify a Windows image](/windows-hardware/manufacture/desktop/modify-an-image?view=windows-11). - name: Migration and support questions: - question: What is the recommended migration path? answer: | - Update your application from .NET Framework to modern .NET, such as .NET 10. If you can't move to .NET, update your application to .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). + Update your application from .NET Framework to .NET. If you can't move to .NET, update your application .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). - question: Where can enterprises and ISVs get additional help with compatibility? answer: | diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 7a6c7cf15dd30..26b274c4ac1f0 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -6,11 +6,39 @@ ai-usage: ai-assisted --- # Install .NET Framework 3.5 on Windows 11 +.NET Framework 3.5 is supported Windows 11. How you obtain .NET Framework 3.5 depends on which version of Windows 11 you're using. Use the following list to identify the installation method that's applicable to you: + +- [Windows 11 25H2 and earlier versions.](dotnet-35-windows.md#install-net-framework-35-on-demand) +- [Windows 11 Insider Preview Build 27965 and later versions.](#install-net-framework-35-on-windows-11) + +## How do I determine which version of Windows I'm using? + +There are a few different ways you can find the version of Windows you're using: + +- Try [this link (ms-settings:about)](ms-settings:about) which might open the Settings app. + + 1. Scroll down to the **Windows specifications** section and find the **Version** field. + +- Try using the start menu: + + 1. Press the Windows key to open the **Start** menu. + 1. Type `Settings` to find the **Settings** app and open it. + 1. Scroll down to the **Windows specifications** section and find the **Version** field. + +- Try running the `winver.exe` app: + + 1. Press the Windows+R keyboard shortcut to open the **Run** dialog. + 1. Type `winver.exe` and press Enter. + +## Windows 11 Insider Preview Build 27965 and later + [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] ## .NET Framework 3.5 optional components -The following optional .NET Framework 3.5 components were previously available as Windows Features on Demand. Windows 11 removes these components: +_Applies to **Windows 11 Insider Preview Build 27965 and later**_ + +The following optional .NET Framework 3.5 components were previously available as Windows Features on Demand. Windows 11 Insider Preview Build 27965 removes these components: - ASP.NET 3.5 - .NET Extensibility 3.5 @@ -19,7 +47,7 @@ The following optional .NET Framework 3.5 components were previously available a ## How to enable ASP.NET 3.5 and WCF in IIS -ASP.NET 3.5 and WCF require additional registration to run in IIS. +Starting with Windows 11 Insider Preview Build 27965, ASP.NET 3.5 and WCF require additional registration to run in IIS. Enable ASP.NET 3.5 on your device using the [`Enable-ASPNet35.ps1`](https://go.microsoft.com/fwlink/?linkid=2348600&clcid=0x409) PowerShell script. The script enables the functionality of the following optional components that have been removed from Windows: diff --git a/docs/framework/install/dotnet-35-windows.md b/docs/framework/install/dotnet-35-windows.md index 1bd93c9d29493..ad13589e81f88 100644 --- a/docs/framework/install/dotnet-35-windows.md +++ b/docs/framework/install/dotnet-35-windows.md @@ -6,6 +6,8 @@ ai-usage: ai-assisted --- # Install .NET Framework 3.5 on Windows and Windows Server +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] + .NET Framework is software that allows programs to run on your computer. Think of it as an engine that apps need to function—just like a car needs an engine to run, some apps need .NET Framework to work. This article helps you install version 3.5, which is an older version that some apps still require. You might need .NET Framework 3.5 to run an app on Windows or Windows Server. Windows and Windows Server come with .NET Framework 4, which doesn't support apps built with .NET Framework 1.1 through 3.5. To run these apps, install .NET Framework 3.5. If you're a developer that requires .NET Framework 3.5, see the section [Developers and .NET Framework 3.5](#developers-and-net-framework-35). @@ -13,12 +15,6 @@ If you're a developer that requires .NET Framework 3.5, see the section [Develop > [!TIP] > You might be able to use a config file to force the app to run on .NET Framework 4. For more information, see [Migration: Retarget or recompile](../migration-guide/migrating-from-the-net-framework-1-1.md#retarget-or-recompile). -## Install .NET Framework 3.5 on Windows 11 Insiders Preview - -[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] - -[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] - ## Install .NET Framework 3.5 on demand You might see the following configuration dialog if you try to run an app that requires an older version of .NET Framework. Depending on your version of Windows, the dialog might be slightly different. Choose **Download and install this feature** to enable .NET Framework 3.5. This option requires an internet connection. @@ -48,9 +44,7 @@ Enable .NET Framework 3.5 through the **Add Roles and Features Wizard**. ## Enable .NET Framework 3.5 on Windows -You can enable the .NET Framework 3.5 through the Windows Control Panel. This option requires an internet connection. If you're using Windows 11, consider the [.NET Framework 3.5 on Windows 11 FAQ](dotnet-35-windows-11-faq.yml). - -[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] +[!INCLUDE [dotnet-35-windows-11-caution-version](includes/dotnet-35-windows-11-caution-version.md)] 1. Press the Start :::image type="icon" source="media/dotnet-35-windows/windows-keyboard-logo.png" border="false"::: button on the taskbar. 1. Search for **Windows Features** and open it. The **Turn Windows features on or off** dialog box appears. @@ -62,13 +56,11 @@ You don't need to select the child items for **Windows Communication Foundation ## Download the offline installer -The .NET Framework 3.5 SP1 offline installer is available for Windows versions **prior to Windows 10 and Windows Server 2016**. For more information, see [.NET Framework 3.5 SP1 download page](https://dotnet.microsoft.com/download/dotnet-framework/net35-sp1?wt.mc_id=install-docs). - -[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] +[!INCLUDE [dotnet-35-windows-11-caution-version](includes/dotnet-35-windows-11-caution-version.md)] -### Windows 11 +The .NET Framework 3.5 SP1 offline installer is available for Windows versions **prior to Windows 10 and Windows Server 2016**, such as **Windows 8**. For more information, see [.NET Framework 3.5 SP1 download page](https://dotnet.microsoft.com/download/dotnet-framework/net35-sp1?wt.mc_id=install-docs). -[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] +[!INCLUDE [dotnet-35-find-update](includes/dotnet-35-find-update.md)] ### Windows 10 diff --git a/docs/framework/install/includes/dotnet-35-find-update.md b/docs/framework/install/includes/dotnet-35-find-update.md index b8541d7744fb6..5aedd080fe807 100644 --- a/docs/framework/install/includes/dotnet-35-find-update.md +++ b/docs/framework/install/includes/dotnet-35-find-update.md @@ -5,4 +5,4 @@ ms.topic: include --- > [!IMPORTANT] -> .NET Framework 3.5 was released in 2008. Before installing .NET Framework 3.5, try to find an updated version of your software that uses a new version of .NET Framework or that uses modern .NET. +> .NET Framework 3.5 was released in 2008. Before installing .NET Framework 3.5, try to find an updated version of your software that uses a new version of .NET Framework or .NET. diff --git a/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md b/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md new file mode 100644 index 0000000000000..4a940fc7d5d30 --- /dev/null +++ b/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md @@ -0,0 +1,8 @@ +--- +ms.author: adegeo +ms.date: 02/02/2026 +ms.topic: include +--- + +> [!CAUTION] +> If you're using Windows 11 Insider Preview Build 27965 or later, see [Install .NET Framework 3.5 on Windows 11](dotnet-35-windows-11.md). diff --git a/docs/framework/toc.yml b/docs/framework/toc.yml index 5120ef79ededc..ba053f8c1f783 100644 --- a/docs/framework/toc.yml +++ b/docs/framework/toc.yml @@ -37,10 +37,10 @@ items: items: - name: Windows 11 href: install/dotnet-35-windows-11.md + - name: Windows 11 and .NET Framework 3.5 FAQ + href: install/dotnet-35-windows-11-faq.yml - name: Windows 10, Windows Server, and other Windows href: install/dotnet-35-windows.md - - name: Windows 11 FAQ for .NET Framework 3.5 - href: install/dotnet-35-windows-11-faq.yml - name: Migration guide items: - name: Overview From c36898843e63780b126cfa3fd17bdb8be177261f Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 12:38:02 -0800 Subject: [PATCH 05/12] Remove the FAQ link from the include --- docs/framework/install/dotnet-35-windows-11.md | 2 ++ docs/framework/install/dotnet-35-windows.md | 2 ++ docs/framework/install/includes/dotnet-35-installer.md | 2 -- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 26b274c4ac1f0..214727e8881dd 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -34,6 +34,8 @@ There are a few different ways you can find the version of Windows you're using: [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] +For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). + ## .NET Framework 3.5 optional components _Applies to **Windows 11 Insider Preview Build 27965 and later**_ diff --git a/docs/framework/install/dotnet-35-windows.md b/docs/framework/install/dotnet-35-windows.md index ad13589e81f88..332a8e74f2b7c 100644 --- a/docs/framework/install/dotnet-35-windows.md +++ b/docs/framework/install/dotnet-35-windows.md @@ -79,6 +79,8 @@ If you still can't resolve your installation issue or you don't have an internet [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] +For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). + Additionally, the optional components that rely on .NET Framework 3.5 have also been removed: - ASP.NET 3.5 diff --git a/docs/framework/install/includes/dotnet-35-installer.md b/docs/framework/install/includes/dotnet-35-installer.md index e682db2dae41e..1d101e3afc78a 100644 --- a/docs/framework/install/includes/dotnet-35-installer.md +++ b/docs/framework/install/includes/dotnet-35-installer.md @@ -5,5 +5,3 @@ ms.topic: include --- Starting with Windows 11 Insider Preview Build 27965, .NET Framework 3.5 is no longer included as Windows Feature on Demand optional component. Installation of .NET Framework 3.5 is done through a standalone installer (also known as an offline installer). For more information, see [Announcing Windows 11 Insider Preview Build 27965 (Canary Channel)](https://blogs.windows.com/windows-insider/2025/10/08/announcing-windows-11-insider-preview-build-27965-canary-channel/). - -For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). From cdd4dff02fc7c1cc6f4f959a6a996ed49c7ccaa3 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 15:02:55 -0800 Subject: [PATCH 06/12] Fix links --- docs/framework/install/dotnet-35-windows-11.md | 2 +- docs/framework/install/dotnet-35-windows.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 214727e8881dd..cf71b4d7c710a 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -34,7 +34,7 @@ There are a few different ways you can find the version of Windows you're using: [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] -For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). +For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](dotnet-35-windows-11-faq.yml). ## .NET Framework 3.5 optional components diff --git a/docs/framework/install/dotnet-35-windows.md b/docs/framework/install/dotnet-35-windows.md index 332a8e74f2b7c..a49a89ebe04cb 100644 --- a/docs/framework/install/dotnet-35-windows.md +++ b/docs/framework/install/dotnet-35-windows.md @@ -79,7 +79,7 @@ If you still can't resolve your installation issue or you don't have an internet [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] -For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](../dotnet-35-windows-11-faq.yml). +For more information about this change to .NET Framework 3.5, see [.NET Framework 3.5 on Windows 11 FAQ](dotnet-35-windows-11-faq.yml). Additionally, the optional components that rely on .NET Framework 3.5 have also been removed: From f56a2b4637142d4b5e944109417efd24c42cd19c Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 15:03:29 -0800 Subject: [PATCH 07/12] Fix other link --- .../install/includes/dotnet-35-windows-11-caution-version.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md b/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md index 4a940fc7d5d30..3e6b2e0821bf2 100644 --- a/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md +++ b/docs/framework/install/includes/dotnet-35-windows-11-caution-version.md @@ -5,4 +5,4 @@ ms.topic: include --- > [!CAUTION] -> If you're using Windows 11 Insider Preview Build 27965 or later, see [Install .NET Framework 3.5 on Windows 11](dotnet-35-windows-11.md). +> If you're using Windows 11 Insider Preview Build 27965 or later, see [Install .NET Framework 3.5 on Windows 11](../dotnet-35-windows-11.md). From f3b413d654be5661fe922b3dcd24edaaf6c72e7d Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 3 Feb 2026 15:10:07 -0800 Subject: [PATCH 08/12] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- docs/framework/install/dotnet-35-windows-11-faq.yml | 4 ++-- docs/framework/install/dotnet-35-windows-11.md | 4 ++-- docs/framework/install/includes/dotnet-35-installer.md | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/framework/install/dotnet-35-windows-11-faq.yml b/docs/framework/install/dotnet-35-windows-11-faq.yml index dcc41db52fbb1..25a9e947b61b1 100644 --- a/docs/framework/install/dotnet-35-windows-11-faq.yml +++ b/docs/framework/install/dotnet-35-windows-11-faq.yml @@ -1,6 +1,6 @@ ### YamlMime:FAQ metadata: - title: .NET Framework. 3.5 on Windows 11 FAQ + title: .NET Framework 3.5 on Windows 11 FAQ description: "This article answers frequently asked questions about .NET Framework 3.5 on Windows 11." titleSuffix: "" ms.topic: faq @@ -49,7 +49,7 @@ sections: questions: - question: What is the recommended migration path? answer: | - Update your application from .NET Framework to .NET. If you can't move to .NET, update your application .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). + Update your application from .NET Framework to .NET. If you can't move to .NET, update your application to .NET Framework 4.8.1. For more information, see [Microsoft .NET Framework lifecycle policy](/lifecycle/products/microsoft-net-framework). - question: Where can enterprises and ISVs get additional help with compatibility? answer: | diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index cf71b4d7c710a..74fdbdd62a46f 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -6,10 +6,10 @@ ai-usage: ai-assisted --- # Install .NET Framework 3.5 on Windows 11 -.NET Framework 3.5 is supported Windows 11. How you obtain .NET Framework 3.5 depends on which version of Windows 11 you're using. Use the following list to identify the installation method that's applicable to you: +.NET Framework 3.5 is supported on Windows 11. How you obtain .NET Framework 3.5 depends on which version of Windows 11 you're using. Use the following list to identify the installation method that's applicable to you: - [Windows 11 25H2 and earlier versions.](dotnet-35-windows.md#install-net-framework-35-on-demand) -- [Windows 11 Insider Preview Build 27965 and later versions.](#install-net-framework-35-on-windows-11) +- [Windows 11 Insider Preview Build 27965 and later versions.](#windows-11-insider-preview-build-27965-and-later) ## How do I determine which version of Windows I'm using? diff --git a/docs/framework/install/includes/dotnet-35-installer.md b/docs/framework/install/includes/dotnet-35-installer.md index 1d101e3afc78a..8208aa0f83848 100644 --- a/docs/framework/install/includes/dotnet-35-installer.md +++ b/docs/framework/install/includes/dotnet-35-installer.md @@ -2,6 +2,7 @@ ms.author: adegeo ms.date: 02/02/2026 ms.topic: include +ai-usage: ai-assisted --- -Starting with Windows 11 Insider Preview Build 27965, .NET Framework 3.5 is no longer included as Windows Feature on Demand optional component. Installation of .NET Framework 3.5 is done through a standalone installer (also known as an offline installer). For more information, see [Announcing Windows 11 Insider Preview Build 27965 (Canary Channel)](https://blogs.windows.com/windows-insider/2025/10/08/announcing-windows-11-insider-preview-build-27965-canary-channel/). +Starting with Windows 11 Insider Preview Build 27965, .NET Framework 3.5 is no longer available as a Windows Features on Demand optional component. Install it using a standalone installer (also known as an offline installer). For more information, see [Announcing Windows 11 Insider Preview Build 27965 (Canary Channel)](https://blogs.windows.com/windows-insider/2025/10/08/announcing-windows-11-insider-preview-build-27965-canary-channel/). From 9684106905d7d3247c42826ed9a9b52708e6b195 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Tue, 3 Feb 2026 15:12:34 -0800 Subject: [PATCH 09/12] Port "how to determine" to include --- .../framework/install/dotnet-35-windows-11.md | 23 ++++--------------- .../dotnet-determine-windows-version.md | 22 ++++++++++++++++++ 2 files changed, 26 insertions(+), 19 deletions(-) create mode 100644 docs/framework/install/includes/dotnet-determine-windows-version.md diff --git a/docs/framework/install/dotnet-35-windows-11.md b/docs/framework/install/dotnet-35-windows-11.md index 74fdbdd62a46f..9e28c5f81d675 100644 --- a/docs/framework/install/dotnet-35-windows-11.md +++ b/docs/framework/install/dotnet-35-windows-11.md @@ -11,25 +11,6 @@ ai-usage: ai-assisted - [Windows 11 25H2 and earlier versions.](dotnet-35-windows.md#install-net-framework-35-on-demand) - [Windows 11 Insider Preview Build 27965 and later versions.](#windows-11-insider-preview-build-27965-and-later) -## How do I determine which version of Windows I'm using? - -There are a few different ways you can find the version of Windows you're using: - -- Try [this link (ms-settings:about)](ms-settings:about) which might open the Settings app. - - 1. Scroll down to the **Windows specifications** section and find the **Version** field. - -- Try using the start menu: - - 1. Press the Windows key to open the **Start** menu. - 1. Type `Settings` to find the **Settings** app and open it. - 1. Scroll down to the **Windows specifications** section and find the **Version** field. - -- Try running the `winver.exe` app: - - 1. Press the Windows+R keyboard shortcut to open the **Run** dialog. - 1. Type `winver.exe` and press Enter. - ## Windows 11 Insider Preview Build 27965 and later [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] @@ -85,3 +66,7 @@ Enable ASP.NET 3.5 on your device using the [`Enable-ASPNet35.ps1`](https://go.m ```powershell .\Enable-ASPNet35.ps1 ``` + +## How to determine which version of Windows you're using + +[!INCLUDE [dotnet-determine-windows-version](includes/dotnet-determine-windows-version.md)] diff --git a/docs/framework/install/includes/dotnet-determine-windows-version.md b/docs/framework/install/includes/dotnet-determine-windows-version.md new file mode 100644 index 0000000000000..5416c5f75d8d9 --- /dev/null +++ b/docs/framework/install/includes/dotnet-determine-windows-version.md @@ -0,0 +1,22 @@ +--- +ms.author: adegeo +ms.date: 02/02/2026 +ms.topic: include +--- + +There are a few different ways you can find the version of Windows you're using: + +- Try [this link (ms-settings:about)](ms-settings:about) which might open the Settings app. + + 1. Scroll down to the **Windows specifications** section and find the **Version** field. + +- Try using the start menu: + + 1. Press the Windows key to open the **Start** menu. + 1. Type `Settings` to find the **Settings** app and open it. + 1. Scroll down to the **Windows specifications** section and find the **Version** field. + +- Try running the `winver.exe` app: + + 1. Press the Windows+R keyboard shortcut to open the **Run** dialog. + 1. Type `winver.exe` and press Enter. From 26d626094421244e3f3b7acb84bfb2daa718b36e Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Wed, 4 Feb 2026 11:05:09 -0800 Subject: [PATCH 10/12] Apply suggestions from code review Co-authored-by: Meaghan Osagie (Lewis) Co-authored-by: Rich Lander <2608468+richlander@users.noreply.github.com> --- .../install/includes/dotnet-determine-windows-version.md | 4 ++-- docs/framework/install/on-windows-and-server.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/framework/install/includes/dotnet-determine-windows-version.md b/docs/framework/install/includes/dotnet-determine-windows-version.md index 5416c5f75d8d9..23a64a3d3d65d 100644 --- a/docs/framework/install/includes/dotnet-determine-windows-version.md +++ b/docs/framework/install/includes/dotnet-determine-windows-version.md @@ -10,13 +10,13 @@ There are a few different ways you can find the version of Windows you're using: 1. Scroll down to the **Windows specifications** section and find the **Version** field. -- Try using the start menu: +- Use the start menu: 1. Press the Windows key to open the **Start** menu. 1. Type `Settings` to find the **Settings** app and open it. 1. Scroll down to the **Windows specifications** section and find the **Version** field. -- Try running the `winver.exe` app: +- Run the `winver.exe` app: 1. Press the Windows+R keyboard shortcut to open the **Run** dialog. 1. Type `winver.exe` and press Enter. diff --git a/docs/framework/install/on-windows-and-server.md b/docs/framework/install/on-windows-and-server.md index 86c37b5816a3f..a463aa2ec42a1 100644 --- a/docs/framework/install/on-windows-and-server.md +++ b/docs/framework/install/on-windows-and-server.md @@ -28,7 +28,7 @@ The following versions of .NET Framework are still supported: ### .NET Framework 3.5 -.NET Framework 3.5 is still supported by Microsoft, even though it's an older version of .NET Framework. However, only the .NET Framework 3.5 runtime is supported, which runs apps. Developing new apps that target .NET Framework 3.5 isn't supported. This version of .NET Framework supports running apps that target versions 1.0 through 3.5, and can be installed alongside .NET Framework 4. +.NET Framework 3.5 is supported by Microsoft, even though it's an older version of .NET Framework. However, only the .NET Framework 3.5 runtime is supported, which runs apps. Developing new apps that target .NET Framework 3.5 isn't supported. This version of .NET Framework supports running apps that target versions 1.0 through 3.5, and can be installed alongside .NET Framework 4. [!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] From d33283652e74d8752bec495787accd3ace7fc708 Mon Sep 17 00:00:00 2001 From: "Andy De George (from Dev Box)" Date: Wed, 4 Feb 2026 12:28:20 -0800 Subject: [PATCH 11/12] Swap 3.5 and 4.x --- docs/framework/install/on-windows-and-server.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/framework/install/on-windows-and-server.md b/docs/framework/install/on-windows-and-server.md index 86c37b5816a3f..98b57131bef15 100644 --- a/docs/framework/install/on-windows-and-server.md +++ b/docs/framework/install/on-windows-and-server.md @@ -26,14 +26,6 @@ The following versions of .NET Framework are still supported: - [.NET Framework 4.6.2](https://dotnet.microsoft.com/download/dotnet-framework/net462) (support ends January 12, 2027) - [.NET Framework 3.5 Service Pack 1](https://dotnet.microsoft.com/download/dotnet-framework/net35-sp1) (support ends January 9, 2029) -### .NET Framework 3.5 - -.NET Framework 3.5 is still supported by Microsoft, even though it's an older version of .NET Framework. However, only the .NET Framework 3.5 runtime is supported, which runs apps. Developing new apps that target .NET Framework 3.5 isn't supported. This version of .NET Framework supports running apps that target versions 1.0 through 3.5, and can be installed alongside .NET Framework 4. - -[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] - -If you try to run an app that targets .NET Framework 1.0 through 3.5, and .NET Framework 3.5 is missing, you're prompted to install it. For more information, see [Install .NET Framework 3.5 on Windows](dotnet-35-windows.md). - ### .NET Framework 4.x All .NET Framework 4.x versions are in-place updates. Only a single 4.x version can be present on Windows. Because .NET Framework is installed as part of Windows, consider that: @@ -42,6 +34,14 @@ All .NET Framework 4.x versions are in-place updates. Only a single 4.x version - If the OS comes preinstalled with a particular .NET Framework version, you can't install a previous 4.x version on the same machine. - If you install a later version, you don't have to first uninstall the previous version. +### .NET Framework 3.5 + +.NET Framework 3.5 is still supported by Microsoft, even though it's an older version of .NET Framework. However, only the .NET Framework 3.5 runtime is supported, which runs apps. Developing new apps that target .NET Framework 3.5 isn't supported. This version of .NET Framework supports running apps that target versions 1.0 through 3.5, and can be installed alongside .NET Framework 4. + +[!INCLUDE [dotnet-35-installer](includes/dotnet-35-installer.md)] + +If you try to run an app that targets .NET Framework 1.0 through 3.5, and .NET Framework 3.5 is missing, you're prompted to install it. For more information, see [Install .NET Framework 3.5 on Windows](dotnet-35-windows.md). + ## Developers and Visual Studio Visual Studio uses .NET Framework Developer Packs to support targeting specific versions of .NET Framework 4. If you're a developer who must work on a project targeting an old version of .NET Framework 4, install the corresponding developer pack. For more information, see [Install .NET Framework for developers](guide-for-developers.md). From 96bdc582585bcace800a29fd68362226b2b60b4a Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Wed, 4 Feb 2026 12:42:20 -0800 Subject: [PATCH 12/12] Apply suggestions from code review Co-authored-by: Meaghan Osagie (Lewis) --- .../install/includes/dotnet-determine-windows-version.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/framework/install/includes/dotnet-determine-windows-version.md b/docs/framework/install/includes/dotnet-determine-windows-version.md index 23a64a3d3d65d..9accae4d25b34 100644 --- a/docs/framework/install/includes/dotnet-determine-windows-version.md +++ b/docs/framework/install/includes/dotnet-determine-windows-version.md @@ -6,7 +6,7 @@ ms.topic: include There are a few different ways you can find the version of Windows you're using: -- Try [this link (ms-settings:about)](ms-settings:about) which might open the Settings app. +- Select [this (ms-settings:about) link](ms-settings:about) which might open the Settings app. 1. Scroll down to the **Windows specifications** section and find the **Version** field.