.NET Release and Support Timeline - STS and LTS Releases, the Move to Two-Year STS Support, and End-of-Support Dates

First Published:
Last Updated:

.NET 8 and .NET 9 will both reach their end of support on November 10, 2026. .NET 8 is an LTS (Long Term Support) release, supported for three years, while .NET 9 is an STS (Standard Term Support) release that shipped one year later. The fact that these two versions, released in different years, end on the same date is due to Microsoft's decision on September 16, 2025, to extend the support period for STS releases from 18 to 24 months. Prior to this change, .NET 9 was originally scheduled to end on May 12, 2026.

Microsoft provides end-of-support dates for each .NET version across several resources, including the .NET support policy page, official release metadata, a table in the dotnet/core GitHub repository, and announcements on the .NET Blog. These dates are calculated based on a defined rule. Under the rule as of the verification date, LTS releases are supported for three years, while STS releases are supported for two years, and both end 12 months after the release of the next LTS version. However, once published, these dates can sometimes be adjusted. Five versions—.NET Core 2.0, .NET Core 3.1, .NET 5, .NET 6, and .NET 9—have had their published end-of-support dates or projected end dates pushed back after release.

This article provides a timeline listing the release and end-of-support dates for versions of .NET from .NET Core 1.0 through .NET 11, along with information on where these end dates are documented and when they have been adjusted. .NET Framework, being an integral part of Windows, operates under a different system. The timeline includes only the major events related to the .NET Framework, while the differences in its lifecycle are explained in a separate section. All information was verified as of October 1, 2026. At the time of verification, the release date for .NET 11 is a scheduled date, and the end-of-support date for .NET 11 is not yet on the policy page or in the metadata.

Background and Method of Creating the .NET Release and Support Timeline

I created this timeline because the end-of-support dates for .NET are written in several documents. These dates are often presented differently across various sources, and sometimes, even change after being initially published. I wanted one page to answer three key questions, using only information from the original documentation: What is the end-of-support date for the version you are currently using? Where can you find that date? And could that date potentially change?

Which .NET This Timeline Covers

This article primarily focuses on the lineage that began with .NET Core 1.0 in 2016. This lineage was initially released as .NET Core until 2020, when it was rebranded as .NET with the release of .NET 5. Microsoft's Learn lifecycle page notes this rebranding, stating, Beginning with .NET 5.0, Microsoft .NET Core has been rebranded as .NET. Throughout this timeline, each entry indicates the name used at the time of the event.

.NET Framework is a separate product that has been available for Windows since the 2000s. Versions of .NET Framework 4.5.2 and later are treated as components of Windows and frequently do not have specific end-of-support dates. This distinction is summarized in a single table in the Current Overview section. Xamarin, Mono, and .NET Standard each have their milestones represented by a separate entry in the timeline.

In this article, "STS" refers to Standard Term Support for .NET, and is not related to AWS Security Token Service (AWS STS).

Primary Sources Used in This Article

The data in the timeline was taken mainly from the following sources:

  • .NET Support Policy Pages — .NET and .NET Core Support Policy (displayed as Last updated: September 8, 2026) and .NET Framework Support Policy (displayed as Last updated: August 18, 2025). These pages contain tables detailing release dates, end-of-support dates, and support phases.
  • Learn Lifecycle Pages — Pages for Microsoft .NET and .NET Core and Microsoft .NET Framework products, as well as the .NET Framework Lifecycle FAQ. ⚠ The two product pages state that dates are shown in Pacific Time, and their HTML records the end of support as 06:59:59 the following day. For example, the end of support for .NET 8 is recorded as 11/11/2026 6:59:59 AM in the HTML. The date displayed in the browser varies with the reader's time zone; it is 2026-11-11 in Pacific Time and 2026-11-10 in Japan Standard Time. This article uses the same dates as the policy pages (e.g., 2026-11-10 for .NET 8).
  • Official Release Metadata — releases-index.json and releases.json for each channel. These contain values such as release-type, support-phase, and eol-date for each version. ⚠ The releases.json metadata for .NET 9 is missing the release entry for 2024-11-12, and the entry for version 9.0.0 is dated 2024-12-03. Therefore, this article does not use release dates from the metadata, instead relying on the policy pages, the GitHub table, and release announcements.
  • GitHub dotnet/core Repository — The version table in releases.md, the support policy in release-policies.md, and release-notes/<version>/README.md for each version. The dates when the tables and policies were updated were verified through the commit history.
  • .NET Blog — Announcements regarding the release of each version and announcements regarding the end of support. For announcements that have been updated after their initial publication, the original content was verified using the Internet Archive.

The How the End Date Is Set Column

The version tables include a column labeled How the End Date Is Set. This column indicates how the end-of-support date for each version is determined. The possible values are:

  • Declared — Microsoft has declared an end-of-support date on its policy page. While the date for .NET and .NET Core is calculated based on a defined policy, the resulting date is reflected on the policy page, in the metadata, and, except for .NET 10, in official announcements.
  • Declared, then extended — After release, the announced end-of-support date has been postponed. This applies to .NET Core 2.0, .NET Core 3.1, .NET 5, .NET 6, and .NET 9. In the case of .NET 5, the initial announcement was not a specific date but rather an estimated timeframe.
  • Not yet declared — The end-of-support date is not yet on the policy page or in the metadata. As of the verification date, .NET 11 falls into this category.
  • Follows the Windows lifecycle — The version does not have a specific end-of-support date; instead, its support follows that of the underlying Windows operating system. This applies to .NET Framework 4.7 and later versions.

.NET's end-of-support date is calculated based on established rules. In this respect, it's similar to a language that only specifies those rules without publicly announcing a specific date. The difference lies in Microsoft's practice of publishing the calculated end-of-support date before that date actually arrives. The Go Release and Support Timeline in this series addresses end-of-support dates derived from rules, in the same column.

What This Article Leaves to Other Articles

This article does not cover new features in each language and runtime version, nor does it provide guidance on which version to choose. It also does not detail the process of migrating from .NET Framework. Information on what is automated when using AWS Transform to convert .NET applications can be found in What AWS Transform Automates and What Stays Human. Dates for the .NET runtimes and platforms supported by AWS Lambda and AWS Elastic Beanstalk are available in AWS End-of-Support and EOL Reference, AWS History and Timeline regarding AWS Lambda, and AWS History and Timeline regarding AWS Elastic Beanstalk. The versions and lifetimes of other languages are covered in Java Version and LTS Timeline, Python Version Support and EOL Timeline, and Node.js Release and EOL Timeline.

.NET Release and Support Historical Timeline (Updates from April 12, 2010)

The following five tables represent the core timeline. Each table has the following columns. All references were obtained on October 1, 2026.

  • Date — Dates for releases and end-of-support, based on the support policy page and GitHub tables. Announcements reflect publication dates, while repository document changes reflect commit dates. Scheduled events are marked with (scheduled).
  • Line — Indicates the product line to which the event applies: .NET Framework, .NET Core, .NET, Support policy, .NET Standard, Xamarin, or Mono. .NET Core and .NET refer to the name used at the time of the event.
  • What Happened — A description of the event.
  • Source — The documentation used as the basis for the entry.

Index:

  • 2010–2016 - The period when .NET Framework 4 shipped, the open-source initiative for .NET Core was announced, and .NET Core 1.0 and 1.1 shipped.
  • 2017–2019 - The period when .NET Core 2.x and 3.x shipped, the end-of-support date for .NET Core 2.0 was extended, and a policy was announced to release major versions annually in November.
  • 2020–2022 - The period when .NET 5 shipped (removing "Core" from the name), the support duration for Current releases was changed to 18 months, and the name Current was changed to STS.
  • 2023–2025 - The period when .NET 8, .NET 9, and .NET 10 shipped, and the support duration for STS releases was extended to 24 months.
  • 2026 - The period when .NET 8 and .NET 9 entered Maintenance, end-of-support dates were announced, and .NET 11 RC1 shipped.

* You can sort the table by clicking on the column name.

2010–2016 — .NET Framework 4 and the Start of .NET Core

During this period, the .NET Framework 4.x series began, and .NET Core emerged as a separate product. The announcement of .NET Core 1.0 defined two types: a Long Term Support (LTS) release and another type that was not LTS.

DateLineWhat HappenedSource
2010-04-12.NET Framework.NET Framework 4 shipped. This was the first version in the 4.x series. The Lifecycle FAQ describes updates from version 4.6.2 onwards as compatible in-place updates on top of versions 4 through 4.6.1..NET Framework Support Policy / Lifecycle FAQ - .NET Framework
2014-11-12.NET CoreMicrosoft announced that .NET Core would be open source. The announcement stated that both the runtime and framework libraries would be open source, and that the .NET Core project would be managed under the .NET Foundation..NET Core is Open Source
2016-01-12.NET FrameworkSupport for .NET Framework 4, 4.5, and 4.5.1 ended. The Lifecycle FAQ states, Support for .NET Framework 4, 4.5, and 4.5.1 ended on January 12, 2016. While support ended for these versions, subsequent versions within the 4.x series (4.5.2 and later) continued to be supported as part of Windows.Lifecycle FAQ - .NET Framework / .NET Framework Support Policy
2016-06-27.NET Core.NET Core 1.0 shipped. The announcement defined two release types. LTS releases are supported for three years from their release date, and for one year after the release of the next LTS release. Another category is called Fast Track Support (FTS), where minor versions, such as 1.1, are supported within the same three-year timeframe as the parent LTS releases.Announcing .NET Core 1.0
2016-11-16.NET Core.NET Core 1.1 shipped. The announcement referred to 1.1 as the first Current release, and used the names LTS and Current for the two release types. Previously, the non-LTS type was referred to as FTS. An announcement dated February 19, 2019, listed 1.1 as an LTS release, stating that it fits into the same support timeframe as 1.0.Announcing .NET Core 1.1 / .NET Core 1.0 and 1.1 will reach End of Life on June 27, 2019

2017–2019 — .NET Core 2.x and 3.x, and an Annual Release Every November

During this period, versions .NET Core 2.0 through 3.1 shipped. According to the rules at the time, a Current release was supported for three months after the release of the subsequent version. Therefore, the end-of-support date was determined when the next version shipped. The end-of-support date for .NET Core 2.0 was extended by one month, announced two days after the initial publication.

DateLineWhat HappenedSource
2017-08-14.NET Core.NET Core 2.0 shipped. This was a Current release.releases.md (dotnet/core) / .NET Core 2.0 will reach End of Life on October 1, 2018
2018-05-30.NET Core.NET Core 2.1 shipped. Version 2.1 was designated as a Long Term Support (LTS) release with an update released in August 2018 (version 2.1.3). The three-year period was counted from that update, resulting in an end-of-support date of August 21, 2021.releases.md (dotnet/core) / .NET Core 2.1 will reach End of Support on August 21, 2021
2018-06-22Support policyThe end-of-support date for .NET Core 2.0 was extended from September 1, 2018, to October 1, 2018. An announcement made on June 20 stated that non-LTS releases would be supported for three months after the release of the next version. With the release of 2.1, the announcement indicated that 2.0 would be supported until September 1, 2018. A subsequent update on June 22 included a section extending the end-of-support date to October 1, 2018, due to a planned fix, in the August 2018 update, for a diagnostics issue that prevented the move to 2.1. The announcement URL still references the original date..NET Core 2.0 will reach End of Life on October 1, 2018 / Internet Archive (2018-06-21) / Internet Archive (2018-06-26)
2018-12-04.NET Core.NET Core 2.2 shipped. It was a Current release, with an end-of-support date of December 23, 2019, exactly three months after the release of version 3.0 (September 23, 2019).releases.md (dotnet/core) / .NET and .NET Core Support Policy
2019-04-18.NET Framework.NET Framework 4.8 shipped..NET Framework Support Policy
2019-05-06Support policyA policy was announced stating that a major version of .NET would be released every November. The announcement Introducing .NET 5 mentioned the release of .NET Core 3.0 in September 2019 and .NET 5 in November 2020, followed by the statement we intend to ship a major version of .NET once a year, every November. A separate announcement on the same day stated, .NET Framework 4.8 will be the last major version of .NET Framework.Introducing .NET 5 / .NET Core is the Future of .NET
2019-06-27.NET CoreSupport for .NET Core 1.0 and 1.1 has ended. This marks exactly three years since the initial release of version 1.0..NET Core 1.0 and 1.1 will reach End of Life on June 27, 2019
2019-09-23.NET Core.NET Core 3.0 shipped. It was a Current release, and its end-of-support date was March 3, 2020, exactly three months after the release of version 3.1 (December 3, 2019).releases.md (dotnet/core) / .NET and .NET Core Support Policy
2019-12-03.NET Core.NET Core 3.1 shipped. This is a Long Term Support (LTS) release and the final release under the .NET Core name.releases.md (dotnet/core) / Announcing .NET Core 3.1

2020–2022 — .NET 5, the 18-Month Current Release, and the Rename to STS

During the period of 2020–2022, the name was changed to remove "Core," the support lifecycle for Current releases was extended to 18 months, and the name Current was changed to STS. .NET 5 concluded approximately three months later than initially projected in the release announcement.

DateLineWhat HappenedSource
2020-09-15.NET StandardMicrosoft announced that a new version of .NET Standard would not be released. The announcement stated, We won’t be releasing a new version of .NET Standard, but .NET 5 and all future versions will continue to support .NET Standard 2.1 and earlier.The future of .NET Standard
2020-11-10.NET.NET 5 shipped. The name was changed to remove "Core." The release announcement designated .NET 5 as the Current release and stated that it would be supported for three months after the release of .NET 6, noting, we expect to support .NET 5.0 through the middle of February 2022.Announcing .NET 5.0 / Microsoft .NET and .NET Core (Learn lifecycle)
2021-07-13Support policyThe document release-policies.md was updated to state that the support lifecycle for Current releases would be 18 months. Previously, on January 8, 2021, the document had indicated a typical support period of 15 months for Current releases. A commit on this date changed the description to specify 18 months, with the final six months designated as a maintenance period. A similar change was initially introduced on July 2, 2021, then reverted on July 13, 2021, before being re-introduced on the same day.Commit b254caa (release-policies.md) / Commit e5f82ca (release-policies.md)
2021-11-08.NET.NET 6 shipped. It's an LTS (Long Term Support) release, and will be supported for three years.Announcing .NET 6
2022-04-26.NET FrameworkSupport for .NET Framework 4.5.2, 4.6, and 4.6.1 has ended. This is to retire content signed with SHA-1 certificates, as announced in April 2021. The announcement from April 4, 2022, stated that updating the runtime environment to version 4.6.2 or later is sufficient, and that applications do not need to be rebuilt for version 4.6.2..NET Framework 4.5.2, 4.6, and 4.6.1 will reach End of Support on Apr 26, 2022 / .NET Framework Support Policy
2022-05-09Support policyEnd-of-support dates in releases.md were aligned with Patch Tuesday. The commit for releases.md on this day shifted the end-of-support date for .NET Core 3.1 from December 3, 2022, to December 13, 2022; for .NET 5, from May 8, 2022, to May 10, 2022; and for .NET 6, from November 8, 2024, to November 12, 2024. The commit message stated, EOL dates (going forward) will align with Update Tuesday. The Internet Archive copy of the policy page captured on February 9, 2022, also lists the dates prior to the change. The policy page, as of the verification date, states Starting with .NET Core 3.1, end of life dates align with Microsoft Patch Tuesday (second Tuesday of each month).Commit 7750cfd (releases.md) / Internet Archive (2022-02-09) / .NET and .NET Core Support Policy
2022-05-10.NETSupport for .NET 5 has ended. The announcement from March 24, 2022, stated that .NET 5.0 is not an LTS release and is therefore supported for 18 months, or 6 months after the next release ships, whichever is longer. The end of support occurred approximately three months later than the mid-February 2022 that the release announcement had anticipated..NET 5.0 will reach End of Support on May 10, 2022
2022-08-09.NET Framework.NET Framework 4.8.1 shipped. The policy page, as of the verification date, states that 4.8.1 is the latest version and will be included in future Windows releases..NET Framework Support Policy
2022-10-27Support policyThe term Current has been changed to "Standard Term Support" (STS). On this date, the commit Switch to Standard Term Support (STS) releases to release-policies.md set STS releases at 18 months. The policy page, as of the verification date, notes, STS releases were previously known as Current releases.Commit e349085 (release-policies.md) / .NET and .NET Core Support Policy
2022-11-08.NET.NET 7 shipped. It was the first release referred to, at release time, as a Standard Term Support (STS) release. The release announcement states, It’s labeled as a Standard Term Support (STS) release that will be supported for 18 months..NET 7 is Available Today
2022-12-13.NET CoreSupport for .NET Core 3.1 has ended. With this, all versions released under the name .NET Core have now reached the end of their support lifecycle.releases.md (dotnet/core) / .NET and .NET Core Support Policy

2023–2025 — .NET 8, 9, and 10, and 24-Month STS Support

During this period, .NET 8, .NET 9, and .NET 10 shipped. .NET 9 shipped under an 18-month support cycle, and following its release, the support cycle changed to 24 months, aligning its end-of-support date with that of .NET 8.

DateLineWhat HappenedSource
2023-11-14.NET.NET 8 shipped. It is an LTS (Long Term Support) release.releases.md (dotnet/core) / Announcing .NET 8
2024-05-01XamarinSupport for Xamarin ended. The Xamarin support policy page states, Xamarin support ended on May 1, 2024 for all Xamarin SDKs including Xamarin.Forms. and notes that Xamarin.Forms has evolved into .NET MAUI.Xamarin Support Policy
2024-05-14.NETSupport for .NET 7 ended. This was an 18-month support cycle..NET and .NET Core Support Policy / releases.md (dotnet/core)
2024-08-27MonoIt was announced that the management of the Mono project is being transferred to WineHQ. The README file for the mono/mono repository states that WineHQ will be taking over the upstream management of the Mono project, and that Microsoft is maintaining a new fork of the Mono runtime within the dotnet/runtime repository. The date refers to the commit date when the README file was updated.mono/mono README / Commit 0f53e9e (mono/mono)
2024-11-12.NET.NET 9 shipped, and on the same day, support for .NET 6 ended. .NET 9 is an STS release. Under the rule in place when it shipped (18 months), the planned end-of-support date for .NET 9 was originally May 12, 2026. The releases.md table previously listed the end date for version 9.0 as May 12, 2026 before it was updated on October 15, 2025.Announcing .NET 9 / .NET STS releases supported for 24 months / Commit b56577d (releases.md)
2025-09-16Support policySupport for STS releases has been extended to 24 months. The announcement stated that STS releases will be supported for 12 months from the release of the subsequent version, meaning that .NET 8 and .NET 9 will now both end support on November 10, 2026. The end date for .NET 9 was changed from May 12, 2026, to November 10, 2026. The releases.md table and release-policies.md were updated in the commit made on October 15, 2025..NET STS releases supported for 24 months / Commit b56577d (releases.md, release-policies.md)
2025-11-11.NET.NET 10 shipped. It is an LTS release, with a planned end-of-support date of November 14, 2028. The release announcement states that .NET 10 is supported until November 10, 2028.Announcing .NET 10 / .NET and .NET Core Support Policy

2026 — .NET 8 and .NET 9 in Maintenance, and .NET 11

During this period, .NET 8 and .NET 9 entered their final six-month maintenance phase, while .NET 11 moved into its pre-release stage. Three events are scheduled for November 10, 2026.

DateLineWhat HappenedSource
2026-02-10.NET.NET 11 Preview 1 shipped. Preview versions are not supported..NET 11 release notes (dotnet/core) / release-policies.md (dotnet/core)
2026-05-12.NET.NET 8 and .NET 9 entered the maintenance phase. release-policies.md states that the maintenance phase will be the final six months of support, with improvements limited to security fixes. The date refers to the commit that updated releases.md and the metadata.Commit 7a71e15 (releases.md, releases-index.json) / release-policies.md (dotnet/core)
2026-06-29Support policyMicrosoft announced that .NET 8 and .NET 9 will reach end of support on November 10, 2026. The announcement noted that November 10 is a Patch Tuesday, and if any known critical issues exist, a final update may be released on that day. While applications built with .NET 8 and .NET 9 will continue to function afterward, no further security updates will be provided..NET 8 and .NET 9 will reach End of Support on November 10, 2026
2026-09-08.NET.NET 11 RC1 shipped. It is a Go-Live release. According to release-policies.md, the Go-Live version is the version supported by Microsoft for production use, and is typically a release candidate just prior to General Availability (GA). The "Go-live releases" table on the policy page indicates that support for RC1 will end on 2026-10-13. The End of Support field for .NET 11.0 in releases.md also lists October 13, 2026, which refers to this RC1 release, not the end-of-support date for .NET 11..NET and .NET Core Support Policy / releases.md (dotnet/core) / Commit 4e3d78a (releases.md)
2026-11-10 (scheduled).NET.NET 8 and .NET 9 are scheduled to reach end of support. .NET 11 is also scheduled to be released on the same day. The end dates for .NET 8 and .NET 9 are listed as 2026-11-10 across the policy page, metadata, releases.md, and announcements. The release date for .NET 11 is listed as November 10, 2026 in the table in releases.md, and release-notes/11.0/README.md indicates the same date as the start of support. Neither the version table on the policy page nor the metadata mentions a release date for .NET 11. The announcement at the top of the policy page states that the launch of .NET 11 will be celebrated at .NET Conf 2026, from 2026-11-10 to 2026-11-13..NET and .NET Core Support Policy / releases-index.json / releases.md (dotnet/core)

Current Overview of .NET Versions, STS and LTS, and Support

This section summarizes the support structure for .NET versions, including STS (Standard Term Support) and LTS (Long Term Support), as of the verification date of October 1, 2026. The "Status" column in the tables reflects the status as of the verification date. The status for .NET 8 and .NET 9 is scheduled to change on November 10, 2026.

STS and LTS - How Long Each Release Is Supported

The policy page confirms that the differences between the two types (STS and LTS) are based solely on the support duration.

Customers can choose Long Term Support (LTS) releases or 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 two years.

The same page states that STS releases are supported for one year after the release of the next version. It adds that, since versions are released every 12 months, the STS period is two years. Versions .NET 5 and later follow the pattern where even-numbered versions are LTS and odd-numbered versions are STS (and .NET 5 was referred to as Current). .NET Core versions 1.0, 2.1, and 3.1 are LTS releases that predate this rule. ⚠ GitHub's release-policies.md similarly describes the distinction, stating that STS releases are released in even-numbered years, while LTS releases are released in odd-numbered years. Although the version numbers and release years might appear reversed, they refer to the same versions (for example, .NET 10 LTS was released in 2025).

Versions go through several stages before, during, and after their release. These stages are also reflected in the metadata's support-phase value.

PhaseDescription in release-policies.md
PreviewNot supported. This version is intended for the community to test and provide feedback.
Go-LiveSupported by Microsoft for production environments. Typically, this is a release candidate just before the General Availability (GA) release.
ActiveThis covers the majority of the period after the GA release. It includes improvements to functionality and security, as well as support for new operating systems.
MaintenanceThe final six months of support. Improvements are limited to security fixes.
End of life (EOL)The end of support.

Updates are released on the second Tuesday of each month (Patch Tuesday). However, not every Patch Tuesday will include a .NET update. release-policies.md states, Support typically ends on a patch day.

There are three different names used to refer to the release type that is not LTS. The announcement for .NET Core 1.0 on 2016-06-27 called it Fast Track Support (FTS), while the announcement for .NET Core 1.1 on 2016-11-16 called it Current. From 2022-10-27, it is referred to as Standard Term Support (STS). ⚠ In the metadata, release-type lists versions 2.0, 2.2, 3.0, and 5.0 as sts, and version 1.1 as lts. The tables in this article use the name used at the time of release.

The Move to 24-Month STS Support and Why .NET 8 and .NET 9 End on the Same Day

An announcement on the .NET Blog on 2025-09-16 stated that the support period for STS (Standard Term Support) releases would be extended.

We are increasing the length of support offered for .NET Standard Term Support (STS) releases from 18 months to 24 months. This change is effective starting with .NET 9, which means .NET 9 will now reach end of support on November 10, 2026.

The announcement also detailed the previously planned end-of-support date for .NET 9.

For example, since .NET 10 will ship on November 11, 2025, .NET 9 was scheduled to reach end of support on May 12, 2026.

Furthermore, it outlined the new rules and their implications.

STS releases will be supported for 24 months, 12 months from when the successor release ships. This means that .NET 8 and .NET 9 will reach end of support on the same day – November 10, 2026.

The reason .NET 8 and .NET 9 are now ending on the same date is that both end dates are calculated from the release of .NET 10. The announcement specifies that LTS (Long Term Support) releases will be supported for three years, or for 12 months after the next successor release ships. .NET 10 shipped on November 11, 2025. .NET 8 (LTS) and .NET 9 (STS, with a 24-month support cycle) will both reach end of support on November 10, 2026, 12 months after the release of .NET 10. Previously, under the 18-month rule, .NET 9 was scheduled to end six months after the release of .NET 10.

Why .NET 8 and .NET 9 End on the Same Day - The STS Window Before and After the Move to 24 Months
Why .NET 8 and .NET 9 End on the Same Day - The STS Window Before and After the Move to 24 Months
The announcement cited "out-of-band" (OOB) releases as the reason for the extension. Certain features are released independently of the annual releases, such as .NET Aspire, Microsoft.Extensions.AI, and the C# Dev Kit. When these OOB releases depend on new versions of packages included in the annual releases, some of the packages used by those who stay on LTS releases move to STS releases. Because the support for those packages follows the STS timeline, under the previous 18-month rule, they could have ended sooner than the LTS release (six months earlier in the case of .NET 8 and .NET 9). Under the 24-month rule, these packages will continue to be supported until the same date as the LTS release.

This isn't the first time end dates have been adjusted. The end date for .NET Core 2.0 was initially announced on June 20, 2018, with a planned end date of September 1, 2018. However, an update on June 22, 2018, extended the end date to October 1, 2018. The planned end date for .NET 5, initially announced on November 10, 2020, was originally projected for mid-February 2022. On July 13, 2021, the release-policies.md documentation began stating a support period of 18 months for Current releases. Subsequently, the announcement on March 24, 2022, indicated that the end-of-support date for .NET 5 would be May 8, 2022, citing the 18-month rule. By May 9, 2022, the change to align end-of-support dates with Patch Tuesday had shifted the end-of-support dates for .NET Core 3.1, .NET 5, and .NET 6 by two to ten days. The announcement for .NET 5 was also corrected on May 9, 2022, to May 10, 2022. In every case, the end dates were ultimately pushed back.

The support rules have evolved as follows, as far as this article could confirm:

DateRelease type nameSTS or Current ruleSource
2016-06-27Fast Track Support (FTS)Within the same 3-year timeframe as the parent LTS release, 3 months from the release of the next FTS version, and 1 year from the release of the next LTS release.Announcing .NET Core 1.0
2018-06-20Current3 months from the release of the next version..NET Core 2.0 will reach End of Life on October 1, 2018
2021-01-08CurrentTypically 15 months (with the final 3 months designated for maintenance).Commit e5f82ca (release-policies.md)
2021-07-13Current18 months (with the final 6 months designated for maintenance).Commit b254caa (release-policies.md)
2022-10-27Standard Term Support (STS)18 months.Commit e349085 (release-policies.md)
2025-09-16Standard Term Support (STS)24 months (12 months after the release of the subsequent version)..NET STS releases supported for 24 months

The support rules for LTS releases have consistently been based on a 3-year timeframe. The announcement for .NET Core 1.0 stated a support period of three years, and one year from the release of the next LTS release. The announcement on 2025-09-16 states a support period of three years, or 12 months after the next successor release ships.

Per-Version Support Schedule

The following figure and table outline the release and end-of-support dates for versions of .NET from .NET Core 1.0 to .NET 11. The figure only depicts versions from .NET Core 3.1 onwards.

.NET Support Windows from .NET Core 3.1 to .NET 11 - LTS, Current, and STS Releases
.NET Support Windows from .NET Core 3.1 to .NET 11 - LTS, Current, and STS Releases
* You can sort the table by clicking on the column name.

VersionTypeGAEnd of SupportHow the End Date Is SetStatus (as of October 1, 2026)
.NET 11STS2026-11-10 (scheduled)Not yet on the policy pageNot yet declaredGo-Live (RC1)
.NET 10LTS2025-11-112028-11-14DeclaredActive
.NET 9STS2024-11-122026-11-10Declared, then extendedMaintenance
.NET 8LTS2023-11-142026-11-10DeclaredMaintenance
.NET 7STS2022-11-082024-05-14DeclaredOut of support
.NET 6LTS2021-11-082024-11-12Declared, then extendedOut of support
.NET 5Current2020-11-102022-05-10Declared, then extendedOut of support
.NET Core 3.1LTS2019-12-032022-12-13Declared, then extendedOut of support
.NET Core 3.0Current2019-09-232020-03-03DeclaredOut of support
.NET Core 2.2Current2018-12-042019-12-23DeclaredOut of support
.NET Core 2.1LTS2018-05-302021-08-21DeclaredOut of support
.NET Core 2.0Current2017-08-142018-10-01Declared, then extendedOut of support
.NET Core 1.1Current2016-11-162019-06-27DeclaredOut of support
.NET Core 1.0LTS2016-06-272019-06-27DeclaredOut of support

The dates in the table have been verified against the policy page and the table on GitHub (releases.md). Notes on the table:

  • .NET 11 — The release date is the scheduled date listed in the releases.md table as of the verification date. The release-notes/11.0/README.md document states that .NET 11 will be supported for two years, from November 10, 2026, to November 9, 2028. However, the 11.0 metadata section does not have an eol-date key, and there is no entry for .NET 11 in the table on the policy page listing currently supported versions. This article will treat the end-of-support date for .NET 11 as not yet declared.
  • .NET Core 2.1 — .NET Core 2.1 was designated as an LTS release with the 2.1.3 update in August 2018, approximately three months after its initial release. The three-year support period was calculated from that point.
  • .NET Core 1.1 — The initial announcement referred to 1.1 as a Current release. An announcement dated February 19, 2019, listed 1.1 as an LTS release, stating that it fits into the same support timeframe as 1.0.
  • Five instances of Declared, then extended — Before the extension, the end-of-support dates were: .NET Core 2.0 (September 1, 2018), .NET Core 3.1 (December 3, 2022), .NET 5 (mid-February 2022, estimated, then May 8, 2022), .NET 6 (November 8, 2024), and .NET 9 (May 12, 2026). These five do not include changes to values that the releases.md table listed before a version shipped. For .NET 7 and .NET 10, those values also moved later. The metadata listed the end-of-support date for .NET 7 as May 24, 2024, between February 27, 2023, and May 16, 2024, but releases.md kept May 14, 2024, and .NET 7 ended on that date, so this value is not counted either.

.NET Framework Follows a Different Lifecycle

The mechanism behind .NET Framework version lifetime differs from that of .NET. The support policy page states the following:

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.

Consequently, many versions of .NET Framework that continue to receive support do not have a defined end-of-support date. The policy page indicates that 4.8.1 is the latest version and will continue to be included in future Windows releases. As long as 4.8.1 is installed on a supported version of Windows, it will continue to be supported. However, even as Windows components, certain versions have had published end-of-support dates. Versions 4, 4.5, and 4.5.1 ended on January 12, 2016, while versions 4.5.2, 4.6, and 4.6.1 ended on April 26, 2022, due to the retirement of SHA-1. As of the verification date, version 4.6.2 has an end-of-support date of January 12, 2027.

Version 3.5 SP1 had a change in its handling mid-lifecycle. The Lifecycle FAQ states that from Windows 10 version 1809 and Windows Server 2019 onwards, 3.5 SP1 is treated as a standalone product and receives five years of mainstream support and five years of extended support. On earlier versions of Windows, 3.5 SP1 remains a component of that Windows version.

* You can sort the table by clicking on the column name.

VersionRelease DateEnd of SupportHow the End Date Is SetStatus (as of October 1, 2026)
4.8.12022-08-09—Follows the Windows lifecycleSupported
4.82019-04-18—Follows the Windows lifecycleSupported
4.7.22018-04-30—Follows the Windows lifecycleSupported
4.7.12017-10-17—Follows the Windows lifecycleSupported
4.72017-04-05 (policy page) / 2017-04-11 (Learn)—Follows the Windows lifecycleSupported
4.6.22016-08-022027-01-12DeclaredSupported
4.6.12015-11-302022-04-26DeclaredOut of support
4.62015-07-20 (policy page) / 2015-07-29 (Learn)2022-04-26DeclaredOut of support
4.5.22014-05-052022-04-26DeclaredOut of support
4.5.12013-10-17 (policy page) / 2014-01-15 (Learn)2016-01-12DeclaredOut of support
4.52012-08-15 (policy page) / 2012-10-09 (Learn)2016-01-12DeclaredOut of support
42010-04-122016-01-12DeclaredOut of support
3.5 SP12008-11-18 (policy page) / 2007-11-19 (Learn)2029-01-09DeclaredSupported

The Release Dates in the table differ between the policy page and the HTML of the Learn lifecycle page for five versions. The table lists both dates for the versions where discrepancies exist. The two dates for 3.5 SP1 are approximately one year apart. This article does not determine which date is correct. The End of Support dates are consistent across both pages when 06:59:59 on the following day is read as the end of the previous day.

.NET Support on AWS

As of the verification date, AWS Lambda lists dotnet10 and dotnet8 as managed runtimes, while dotnet9 is only supported through container images. The C# page for Lambda lists the deprecation dates for dotnet8 and dotnet9 as November 10, 2026, the same day that upstream support ends. The runtime table on that page lists, in separate columns, the dates when the creation and updating of functions will cease. The AWS Elastic Beanstalk platform release schedule lists December 2026 as the target date for the .NET 11 platform branch, noting that These dates are tentative and subject to change.

The history and timeline for .NET support on Lambda and Elastic Beanstalk, along with the deprecation tables for each AWS service, can be found at AWS End-of-Support and EOL Reference, AWS History and Timeline regarding AWS Lambda, and AWS History and Timeline regarding AWS Elastic Beanstalk. A comprehensive list of articles related to Lambda is available at AWS Lambda Master Index. The considerations for running Windows Server workloads on AWS are discussed in Running Windows Server Workloads on AWS.

Frequently Asked Questions about .NET Releases and Support

This section answers common questions about .NET support, based on the information provided herein. The dates provided are current as of the verification date of October 1, 2026.

When do .NET 8 and .NET 9 reach end of support?

.NET 8 and .NET 9 are scheduled to reach end of support on November 10, 2026. This date is confirmed across several official sources, including the .NET policy page, official release metadata, the releases.md table on GitHub, and an announcement on the .NET Blog published on June 29, 2026. As of the verification date, both versions are in the maintenance phase, and updates will be limited to security fixes only. According to the announcement, applications built on .NET 8 and .NET 9 will continue to function after this date, but no further security updates will be released.

Why do .NET 8 and .NET 9 end on the same day?

.NET 8 and .NET 9 are scheduled to end on the same date because on September 16, 2025, Microsoft extended the support period for STS (Standard Term Support) releases from 18 months to 24 months. Under the new policy, each STS release will be supported for 12 months following the release of its successor. .NET 8, which is an LTS (Long Term Support) release, will also end its support 12 months after the release of the next LTS version, .NET 10. Since .NET 10 shipped on November 11, 2025, both .NET 8 and .NET 9 are now scheduled to end on November 10, 2026. Prior to this change, .NET 9 was originally slated to end on May 12, 2026.

What is the difference between STS and LTS releases in .NET?

The difference is solely the length of support. The policy page states that LTS (Long Term Support) releases are supported for three years, while STS (Standard Term Support) releases are supported for two years. It also clarifies that all versions have the same level of quality. Since .NET 5, even-numbered versions are LTS, and odd-numbered versions are STS. STS was previously known as Current until 2022. STS stands for Standard Term Support and is not related to AWS Security Token Service.

When will .NET 11 be released, and when does its support end?

.NET 11 is scheduled for release on November 10, 2026. As of the verification date, the releases.md table on GitHub lists this date. .NET 11 is an STS (Standard Term Support) release, and according to policy, it will be supported for two years. However, the end-of-support date is not yet on the policy page or in the metadata. The metadata for version 11.0 does not include an eol-date key, which would indicate the end-of-support date. As of the verification date, RC1 is released as a Go-Live release, and support for RC1 will end on October 13, 2026. However, this date (October 13, 2026) is not the end-of-support date for .NET 11.

Does .NET Framework 4.8 have an end-of-support date?

No, .NET Framework 4.5.2 and later are treated as components of Windows. Versions 4.8 and 4.8.1 follow the support lifecycle of the Windows version they are installed on. The policy page lists 4.8.1 as the latest version and indicates that it will continue to be included with future Windows releases. Among the supported versions, only 4.6.2 (January 12, 2027) and 3.5 SP1 (January 9, 2029) have specific end-of-support dates. Support for versions 4.5.2, 4.6, and 4.6.1 ended on April 26, 2022.

Has a published .NET end-of-support date ever changed?

Yes. Five versions—.NET Core 2.0, .NET Core 3.1, .NET 5, .NET 6, and .NET 9—have had their published end-of-support dates or projected end dates pushed back after release. The end date for .NET Core 2.0 was moved from September 1, 2018, to October 1, 2018. .NET Core 3.1 moved from December 3, 2022, to December 13, 2022. .NET 5 had its projected end date, initially estimated for mid-February 2022, moved to May 8, 2022, and then to May 10, 2022. .NET 6 moved from November 8, 2024, to November 12, 2024. .NET 9 had its end date shifted from May 12, 2026, to November 10, 2026. The extension for .NET Core 2.0 was granted to allow time to address a diagnostics issue in version 2.1. The shifts of ten days for .NET Core 3.1, four days for .NET 6, and a further two days for .NET 5 had arisen by May 9, 2022, from a change made to align the end-of-support dates with Patch Tuesday. The extensions for .NET 5 and .NET 9 were due to changes in the support policies for Current and STS releases.

Summary

This article provides a timeline of release and end-of-support dates for versions of .NET, from .NET Core 1.0 to .NET 11. It details where these end dates are published, how they are determined, and when they have been adjusted.

.NET end-of-support dates are published as dates. Microsoft publishes these end dates, calculated according to established policies, on policy pages, in metadata, on a GitHub table, and in announcements. Under the rule as of the verification date, Long Term Support (LTS) releases are supported for three years, while Standard Term Support (STS) releases are supported for two years. Both end 12 months after the release of the next LTS version.

Published end-of-support dates can be subject to change. Five versions—.NET Core 2.0, .NET Core 3.1, .NET 5, .NET 6, and .NET 9—have had their end-of-support dates or projected end dates pushed back after release. .NET 8 and .NET 9 are scheduled to end on the same date, November 10, 2026, because on September 16, 2025, the support period for STS releases was extended to 24 months.

.NET Framework follows a different process for the end of support. Versions 4.5.2 and later are treated as components of Windows, and versions such as 4.8.1 follow the support lifecycle of the installed Windows version.

⚠ There are events scheduled after the verification date. The scheduled end of support for .NET 8 and .NET 9, and the planned release date for .NET 11, are both November 10, 2026. The end-of-support date for .NET 11 is not yet on the policy page or in the metadata. All information presented is current as of October 1, 2026.

This timeline will be updated as .NET releases and the .NET support policy continue to evolve.

In addition, there are related history-and-timeline articles on this site, so please have a look if you are interested.


References:



References:
Tech Blog with curated related content

Written by Hidekazu Konishi