The .NET Framework is one of Microsoft’s key technologies for many of our customers. It also exemplifies a relatively rare instance of Microsoft changing how we support a product.
When the .NET Framework (we’ll call it .NET in this blog) was released in 2002, it was considered a major product in its own right. As such, it took the usual five years of Mainstream Support and five years of Extended Support. This is commonly known as the 5+5 policy.
With the passage of time, .NET became a more integral part of the Windows operating system in terms of how it is supported and serviced and we’ve found that most customers take these updates in the course of keeping their products current. This servicing story led to some customer confusion and we recognized a need to provide greater clarity around the Support Lifecycle of the .NET Framework.
To simplify this, we took the step of making .NET Framework 3.5 Service Pack 1, and later versions, Components of the Windows operating system.
What does this mean in practical terms? It means that with .NET 3.5 SP1 and later, one simply needs to know if their version of Windows is supported. As a Component, .NET takes the exact same Support Lifecycle as the parent product.
In addition, we are ending support for earlier iterations of .NET 3.0 and 3.5—but are giving customers a year to migrate before ending support. We will require all customers to be on .NET Framework 3.5 SP1 or later, by July 12th, 2011 in order to obtain security updates or support.
For more on the .NET Framework announcement, please visit the official announcement.
Thanks for your continued questions and comments. More information on Microsoft’s support policies can also be found on the Microsoft Support Lifecycle website.
*This posting is provided "AS- IS" with no warranties, and confers no rights.*
When you say support for .NET 3.0/3.5 is ending - what does that mean given that 3.5 SP1 is essentially a superset of 3.0? Or that 3.0 is a superset of 2.0's classes? Does this imply an application targeting .NET 3 but running on client machines which have .NET 3.5 SP1 installed is still a supported scenario?
Hi, Matthew. While .NET 3.5 SP1 is indeed a later release than .NET 3.0 or, say, 3.5 RTM, it will be the only supported version of .NET 3.x after April 12th, 2011. The reasons for this rest largely on how the .NET Framework was released in the past as both a Major Product and a Component and with its own service packs. Customers found this very confusing and understandably so, especially as they were released sometimes on their own (out-of-band) and sometimes with product releases such as Visual Studio.
We very much wanted to simplify this servicing story and make if far less complicated for customers.
Applications targeting .NET 3.x and running on machines with .NET 3.5 SP1 is very much a supported scenario though there may be circumstances where developers may be best off optimizing their .NET code for .NET 3.5 SP1.
Thanks for your question, Matthew!
David
I have that exact same question. It is quite confusing.
We have plenty of appications targeting 2.0 but we have 3.5 SP1 installed. Are will still good for that situation?
The .NET servicing scenario can be a bit complex unfortunately. The key thing to keep in mind is that customers will need to have the .NET Framework 3.5 SP1 bits installed in order to obtain any updates (including those that may patch earlier versions of the .NET Framework stack). Without 3.5 SP1 installed, detection and remediation may not occur. Left unpatched, customers may find themselves vulnerable to potential security issue.