Originally published: July 18, 2016
Updated: September 9, 2021
Please go here to search for your product's lifecycle.
What is the Microsoft Lifecycle Policy for .NET Framework?
Beginning with version 4.5.2 and later, .NET Framework is defined as a component of the Windows operating system (OS). Components receive the same support as their parent products, therefore, .NET Framework 4.5.2 and later follows the lifecycle policy of the underlying Windows OS on which it is installed.
Support for .NET Framework 4, 4.5, and 4.5.1 ended on January 12, 2016.
Support for .NET Framework 4.5.2, 4.6, and 4.6.1 ended on April 26, 2022. Customers and developers must have completed the in-place update to .NET Framework 4.6.2 or later by April 26, 2022 to continue receiving technical support and security updates.
.NET Framework 3.5 SP1, beginning with Windows 10 version 1809 and Windows Server 2019, is a standalone product and receives 5 years of mainstream support followed by 5 years of extended support. For operating systems released prior to Windows 10 version 1809 and Windows Server 2019, .NET 3.5 SP1 remains a component of the Windows version on which it is installed.
Future Windows releases will not affect the lifecycle of .NET 3.5 SP1. For a list of supported operating systems for .NET Framework 3.5 SP1 refer to the .NET Framework system requirements.
There is no change to the lifecycle policy for .NET Framework 4.x and its updates which continue to be defined as a component of the OS and assume the same lifecycle policy as the Windows version on which it is installed.
How is .NET Framework impacted by the Secure Hash Algorithm (SHA-1) retirement?
The .NET team is taking steps that affect previously shipped .NET Framework releases and updates currently available for download from Microsoft. Some versions of .NET Frameworks detailed below will be unsupported and removed from the Microsoft Download Center. This does not impact customers taking the latest updates via Windows Update. They already have the latest .NET Framework 4.8 and no further action is necessary. See the following resources to learn more:
- .NET Framework SHA-1 Retirement -- Impacted Products
- .NET Framework SHA-1 Retirement Announcement
- .NET Framework SHA-1 Retirement FAQs
- .NET Framework Downloads
- .NET Framework Application Compatibility
- Runtime changes between .NET Framework 4.5.2 and .NET Framework 4.6.2
- .NET Framework Migration Guide
What is a component?
A component is defined as a set of files or features that are included with a Microsoft product. Components may be shipped with the product included in a product service pack or update or released later as a web download.
Will I need to recompile/rebuild my applications to use .NET Framework 4.6.2 and later versions?
.NET Framework 4.6.2 and later versions are compatible, in-place updates on top of .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6 and 4.6.1. This means we expect applications built on previous .NET 4.x versions to continue running on .NET Framework 4.6.2 and later versions. Recompiling of apps to target these versions is not necessary.
Are there any breaking changes in .NET Framework 4.6.2? Why do you include these changes?
There are a very small number of changes/fixes in .NET Framework 4.6.2 and later versions that are not fully compatible with earlier .NET versions. Such fixes are included only when necessary in the interests of security, complying with industry-wide standards, or correcting a previous incompatibility. A list of breaking changes in the runtime can be found here.
Additionally, there are several fixes included in these versions that will only be enabled if you choose to recompile your application against them. These types of changes are called retargeting changes. A list of retargeting changes for .NET Framework 4.6.2 and later versions can be found here.
.NET Framework is also middleware in other Microsoft products such as Exchange Server, SQL Server, Dynamics CRM, SharePoint, and Lync. Do I need to make any updates to these products if they are using .NET 4, 4.5, 4.5.1, 4.5.2, 4.6, or 4.6.1?
Newer versions of products such as Exchange, SQL Server, Dynamics CRM, SharePoint, and Lync are based on .NET Framework 4.6.2. .NET Framework 4.6.2 and later versions are compatible, in-place updates on top of .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, and 4.6.1. This means that an application, such as Exchange, built using .NET Framework 4.5.2 will continue to run without any changes when the .NET runtime is updated from .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, or 4.6.1 to later versions. That said, we recommend customers validate their deployments by updating the .NET runtime to .NET 4.6.2 or later in a pre-production environment first before rolling out a newer version in the production environment.
When I installed Visual Studio, it installed a version of .NET Framework. Does this mean the version of .NET Framework that was included with Visual Studio takes the Lifecycle Policy of Visual Studio?
No. Versions of .NET Framework that shipped with host products other than Microsoft Windows shipped with Microsoft Software Supplemental License Terms for Windows. This means that the component is considered part of the Windows operating system.
What is the Lifecycle Policy for different versions of .NET Framework?
.NET Framework 1.1 SP1: .NET Framework 1.0 was supported at the latest service pack level (SP1) under a single product lifecycle policy until October 8, 2013. .NET Framework 1.1 SP1 was supported on Windows Server 2003 (32-bit only, not 64-bit) at the latest service pack level until July 14, 2015.
.NET Framework versions 2.0, 3.0, and 3.5: These versions are supported under a single product lifecycle policy. For the respective end of support dates, see this site. Knowledge base article 2696944 explains that where .NET Framework 3.5 relies on 2.0 or 3.0 to operate, Microsoft will provide support for .NET Framework 2.0 SP2 and .NET Framework 3.0 SP2 components for customers who install .NET Framework 3.5 SP1 for as long as .NET Framework 3.5 SP1 remains in support.
.NET Framework 3.5 SP1: .NET Framework 3.5 SP1 is supported on Windows Vista SP2, Windows 7 SP1, Windows Server 2008 SP2, Windows Server 2008 R2 SP1, Windows 8.1 Update, Windows Server 2012, Windows Server 2012 R2, Windows 10, and Windows Server 2016 according to the end of support date for each operating system.
Starting with Windows 10 version 1809 and Windows Server 2019, .NET Framework 3.5 SP1 is defined as a standalone product and no longer as a component of the operating system (OS). As a product, .NET 3.5 SP1 will receive 5 years of mainstream support followed by 5 years of extended support. Go here to see end dates for this product.
On operating systems prior to Windows 10 version 1809 and Windows Server 2019, .NET 3.5 SP1 assumes the same lifecycle policy as the underlying OS on which it is installed. For a list of supported operating systems for .NET Framework 3.5 SP1 refer to the .NET Framework system requirements.
.NET Framework 4: .NET Framework 4 did not ship in any operating system. Support for .NET Framework 4 on Windows Server 2003 SP2 ended on July 14, 2015, and support on all other operating systems ended on January 12, 2016.
.NET Framework 4.5: .NET Framework 4.5 shipped both in Windows 8, Windows Server 2012 and as a stand-alone redistributable package. Support for .NET Framework 4.5 on all operating systems ended on January 12, 2016.
.NET Framework 4.5.1: Support for .NET Framework 4.5.1 on all operating systems ended on January 12, 2016.
.NET Framework 4.5.2, 4.6, and 4.6.1: These releases retired on April 26, 2022. These specific releases were previously digitally signed using Secure Hash Algorithm (SHA-1) certificates. This algorithm is no longer deemed secure. Go here to learn more about this retirement. Customers are encouraged to move to SHA-2. Go here to learn about validating your application functionality on the newer runtime version. An exception is .NET Framework 4.6, which shipped in Windows 10 Enterprise LTSC 2015. We will continue to support .NET Framework 4.6 on Windows 10 Enterprise LTSC 2015 through end of support of the OS version (October 2025).
.NET Framework 4.6.2: Support for .NET 4.6.2 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required operating system update for Windows Server 2008 SP2, Windows 7 SP1, Windows Server 2008 R2 SP1, Windows 8.1 Update, Windows Server 2012, Windows Server 2012 R2, Windows 10 (Version 1507), and Windows 10 (Version 1511). .NET 4.6.2 is also supported on Windows 10 Anniversary Update (Version 1607) and Windows Server 2016 operating systems.
.NET Framework 4.7: Support for .NET 4.7 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required operating system update for Windows 7 SP1, Windows Server 2008 R2 SP1, Windows 8.1 Update, Windows 10 Anniversary Update (Version 1607), Windows Server 2012, Windows Server 2012 R2 and Windows Server 2016. .NET 4.7 is also supported on the Windows 10 Creators Update (Version 1703).
.NET Framework 4.7.1: Support for .NET 4.7.1 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required operating system update for Windows 7 SP1, Windows Server 2008 R2 SP1, Windows 8.1 Update, Windows 10 Anniversary Update (Version 1607), Windows 10 Creators Update (Version 1703), Windows Server 2012, Windows Server 2012 R2 and Windows Server 2016. .NET 4.7.1 is also supported on the Windows 10 Fall Creators Update (Version 1709) and Windows Server Version 1709.
.NET Framework 4.7.2: Support for .NET 4.7.2 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required operating system update for Windows 7 SP1, Windows Server 2008 R2 SP1, Windows 8.1 Update, Windows 10 version 1607, Windows 10 version 1703, Windows 10 version 1709, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 and Windows Server version 1709. .NET 4.7.2 is also supported on Windows 10 version 1803, Windows 10 version 1809, Windows Server version 1803, and Windows Server 2019.
.NET Framework 4.8: Support for .NET 4.8 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required update for the operating systems below. We recommend customers upgrade to .NET Framework 4.8 to receive the highest level of performance, reliability, and security.
Operating System - Client * | Operating System - Server * |
---|---|
Windows 7 SP1 Windows 8.1 Update Windows 10 version 1607 (LTSC) Windows 10 version 1703 Windows 10 version 1709 Windows 10 version 1803 Windows 10 version 1809 (LTSC) Windows 10 version 1903 Windows 10 version 19H2 Windows 10 version 20H1 Windows 10 version 20H2 Windows 10 version 21H1 Windows 11 |
Windows Server 2008 R2 SP1 Windows Server 2012/R2 Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows Server version 1803 Windows Server version 1903 Windows Server version 1909 Windows Server version 2002 Windows Server version 20H2 Windows Server version 21H2 |
* For end of support dates for specific Windows operating systems, please go to aka.ms/lifecycle/search.
.NET Framework 4.8.1: Support for .NET 4.8.1 follows the Lifecycle Policy of the parent OS. It is supported as a Windows component on the latest required update for the operating systems below.
Operating System - Client ** | Operating System - Server ** |
---|---|
Windows 10 version 20H2 Windows 10 version 21H1 Windows 10 version 21H2 Windows 11 version 21H2 Windows 11 version 22H2 |
Windows Server 2022 |
** .NET Framework 4.8.1 is supported on Windows on Arm starting with Windows 11 only, earlier versions including all versions of Windows 10 are not supported on Arm.
July 2020 edits
EDITED: .NET Framework 3.5 SP1 Lifecycle Policy answer
April 2021 edits
EDITED: .NET Framework 4.5.2, 4.6, 4.6.1 ended support due to SHA-1 retirement.
September 2021 edits
EDITED: .NET Framework Supported OS table updated.
August 2022 edits
EDITED: Added .NET Framework 4.8.1 and updated the OS table for this