How to uninstall the components of the .NET Framework 3.5 SP1

Question:

As described in this blog post, I have been evaluating the beta of the .NET Framework 3.5 SP1 and Visual Studio 2008 SP1.  I ran into some issues running my application on a system with this software installed, so I need to uninstall it.  I have tried to uninstall the .NET Framework 3.5 SP1, but all of the .NET Framework 2.0 assemblies are still at the SP2 level and are not rolled back.  How can I fully uninstall the .NET Framework 3.5 SP1?

Answer:

The .NET Framework 3.5 SP1 is a slipstream replacement for the original release of the .NET Framework 3.5.  It installs the .NET Framework 2.0 SP2 and the .NET Framework 3.0 SP2 behind the scenes, and 2.0 SP2 and 3.0 SP2 are both slipstream replacements of previous versions of the .NET Framework 2.0 and 3.0.

In order to fully uninstall the .NET Framework 3.5 SP1 and return to the .NET Framework 3.5, .NET Framework 2.0 SP1 and .NET Framework 3.0 SP1, you must use the following steps.  Note that there are different steps on Windows Vista and Windows Server 2008 than on earlier versions of Windows because the .NET Framework 2.0 and 3.0 are OS components on Windows Vista and Windows Server 2008.

How to uninstall the .NET Framework 3.5 SP1 on Windows XP and Windows Server 2003:

  1. Go to the Add/Remove Programs control panel
  2. Find the product named Microsoft .NET Framework 3.5 SP1 and uninstall it
  3. Find the product named Microsoft .NET Framework 3.0 SP2 and uninstall it
  4. Find the product named Microsoft .NET Framework 2.0 SP2 and uninstall it
  5. Re-install the original release of the .NET Framework 3.5 (which will re-install the .NET Framework 2.0 SP1 and the .NET Framework 3.0 SP1 behind the scenes)

How to uninstall the .NET Framework 3.5 SP1 on Windows Vista and Windows Server 2008:

Note - these steps are not required if you had a beta version of the .NET Framework 3.5 SP1 and plan to upgrade to the final release.  Behind the scenes, the .NET Framework 2.0 SP2 and .NET Framework 3.0 SP2 packages are designed to upgrade older beta versions of the same packages.  These steps are only needed if you are trying to fully remove the .NET Framework 2.0 SP2, .NET Framework 3.0 SP2 and .NET Framework 3.5 SP1 in order to move back to a previous version of the .NET Framework.

  1. Go to the Programs and Features control panel
  2. Find the product named Microsoft .NET Framework 3.5 SP1 and uninstall it
  3. In the Programs and Features control panel, click the link on the left named View Installed Updates
  4. In the list of installed updates, look for an item named Update for Microsoft Windows (KB948610) - this is the .NET Framework 3.0 SP2 OS update package
  5. Right-click on the item and choose Uninstall
  6. In the list of installed updates, look for an item named Update for Microsoft Windows (KB948609) - this is the .NET Framework 2.0 SP2 OS update package
  7. Right-click on the item and choose Uninstall
  8. Reboot
  9. Re-install the original release of the .NET Framework 3.5 (which will re-install the .NET Framework 2.0 SP1 and the .NET Framework 3.0 SP1 behind the scenes)

<update date="8/7/2008"> Added a note clarifying that these uninstall steps are not needed when moving from a beta to the final release. They are only needed when doing a full uninstall in order to move back to a previous version of the .NET Framework on a system. </update>