Partager via


Mailbag: How to revert to older versions of the .NET Framework 4 family

Question:

I recently installed the .NET Framework 4.6.1 but ran into a compatibility issue with an application that I’m trying to use. How do I revert back to the .NET Framework 4.5 on my PC?

Answer:

All versions of the .NET Framework 4 family are in-place upgrades, which means that they replace previous versions of the .NET Framework 4 family instead of installing side-by-side.

When installing redistributable versions of the .NET Framework 4 family, that means that you must use the Programs and Features control panel to uninstall the newer version and then re-install the older version afterwards.

However, some versions of Windows include a version of the .NET Framework 4 family as a part of the operating system. On those versions of Windows, newer versions of the .NET Framework 4 family will be installed as OS update packages, and they must be uninstalled using the Installed Updates control panel.

This can be tricky because the OS update packages do not include .NET Framework in the name, so you need to know the KB number in order to find and uninstall newer versions of the .NET Framework 4 family, or if you know when you installed the newer version of the .NET Framework, you can sort the Installed Updates control panel by installed date and find it that way.

Some of the download pages for the .NET Framework 4 family also include information about which exact KB number will be installed on which versions of Windows. For example, if you go to the .NET Framework 4.6.1 download page and expand the Additional Information section, it lists the following:

When you install this package you will see following packages/updates installed as per operating system:

  • On Windows 7 SP1 / Windows Server 2008 R2 SP1, you will see the Microsoft .NET Framework 4.6.1 as an installed product under Programs and Features in Control Panel.
  • On Windows 8 / Windows Server 2012 you can find this as Update for Microsoft Windows (KB3102439) under Installed Updates in Control Panel.
  • On Windows 8.1 / Windows Server 2012 R2 you can find this as Update for Microsoft Windows (KB3102467) under Installed Updates in Control Panel.
  • On Windows 10 you can find this as Update for Microsoft Windows (KB3102495) under Installed Updates in Control Panel.

Comments

  • Anonymous
    May 17, 2016
    I have manually installed .net 4.6.1 on my PC. In control panel i can see .net 4.5.1 and 4.6.1 and its derivatives.I checked my registry and it is showing that 4.6.1 is being used currently.I went ahead and uninstall 4.6.1 from control panel, results my VS2013 stopped working then i again uninstall 4.5.1 and reinstall it and VS2013 started working but my project is not building.I want to revert all the configuration to .net 4.5.1.Please help
    • Anonymous
      May 18, 2016
      Hi Nihal - You will need to fully uninstall all versions of the .NET Framework 4 family from your PC, then re-install the .NET Framework 4.5.1 in order to fully revert from 4.6.1 to 4.5.1.If you do that and you still see build errors for your project, can you please reply and list the exact errors and I'll see if I can come up with any additional suggestions for you to try?
  • Anonymous
    July 24, 2016
    I can't believe MS released a non-backward compatible 4.6 without a safeguard in place for those of us who use VS.
    • Anonymous
      July 25, 2016
      Hi No Beezwax - With the exception of a very small number of known cases, the .NET Framework 4.6 is backwards compatible with .NET Framework versions from 4 through 4.5.2. What are the exact issues you are running into in your VS scenarios?
  • Anonymous
    July 27, 2016
    Aaron,Thanks very much for this. I wasted several hours last night and this morning trying to follow official Microsoft documentation. Uninstalling KB3102467 did the trick first time.That documentation never does cut to the chase and explain that 4.6.1 is in fact installed as a KB update. To me, that seems like something that needs to be remedied, for the following reason:Installing SharePoint 2013 on a machine that already has .NET 4.6.1 fails, because the SharePoint installer doesn't understand that .NET 4.6.1 is a valid substitute for .NET 4.5; the Pre-requisites installer is OK with 4.6.1, but the product installer itself makes a very newbie mistake in requiring exactly "4.5" and nothing else.
    • Anonymous
      August 09, 2016
      Doing a fresh install of Win 10 Anniversary Update. Driver for internal Intel HD graphics card fails - error request that "latest version of MS .NET Framework" be installed. Since it is a clean install, no way to uninstall the 4.6.2 version imbedded in the OS, and revert to an earlier version. BTW, had prior Win 10 update, upgraded from Win 7, no problem with HD graphics driver, which was already installed under Win 7.
      • Anonymous
        August 10, 2016
        Hi BigM - This type of error typically means that the installer has an app compatibility issue with newer versions of Windows. I'd recommend searching on the Intel web site for an updated driver installer that is supported on the Windows 10 Anniversary Update.
  • Anonymous
    December 30, 2016
    HelloI have 64 bit windows 8.1 enterprise.installed in virtually all updates.system is working properly.but ceased to run regular paint and wordpad.I tried to install the system software neopaint. everything went well, but it just will not start.on these and other grounds I came to the conclusion that has broken .NET Framework.I installed version of the .NET Framework 4.6.2.Manual installation x64-Windows8.1-KB3151864-x64 via dism an error.All installed updates I have not deleted because the key was used Dism.exe / online / Cleanup-Image / StartComponentCleanup / ResetBase.-like advise me to completely remove from the Microsoft .NET Framework 4.6.0-4.6.1-4.6.2 system and revert to the initial Microsoft .NET Framework 4.5.1 for windows 8.1?
    • Anonymous
      January 04, 2017
      Hi Pavel - I don't think programs like WordPad or Paint use the .NET Framework, so I'm not sure the .NET Framework is the root cause of the issues that you're describing.If you want to fully remove the .NET Framework 4.6.2 on Windows 8.1, you'll need to uninstall the entry that you see in the Programs and Features control panel, then go to View Installed Updates and remove this item (which is listed on the download page at https://www.microsoft.com/en-us/download/details.aspx?id=53344 under Additional Information):On Windows 8.1 / Windows Server 2012 R2 you can find this as Update for Microsoft Windows (KB3151864) under Installed Updates in Control Panel.
  • Anonymous
    February 08, 2017
    Thanks for this article. This is very useful.
  • Anonymous
    February 13, 2017
    The comment has been removed
    • Anonymous
      February 19, 2017
      The comment has been removed
  • Anonymous
    April 06, 2017
    A small question: Why Windows Embedded with .Net Framework 4.6.2 cannot get updates from Windows Update?https://connect.microsoft.com/VisualStudio/feedback/details/3117761/net-framework-4-6-2-cannot-get-update-from-windows-update-in-windows-embedded-7-8-1
  • Anonymous
    June 06, 2017
    I need to revert to an older version of the .NET Framework to successfully run an application. Are there any concerns that the older version will affect other applications? And is there any concern for a newer version being automatically updated on the computer? Thank you for any and all help you can provide.
    • Anonymous
      June 06, 2017
      Hi EBH - If you have applications that specifically require newer versions of the .NET Framework, then they will be affected if you remove the newer version. Most applications will show an error message if it requires a newer version of the .NET Framework that is not currently installed on the PC, and in some cases they will offer you the option to download and install it, so you should be able to recognize pretty quickly if you have any applications that might be affected by removing the newer version.I don't know for sure what the automatic update policies are for the various versions of the .NET Framework. After you remove the newer version, you can visit Windows Update and see if it offers the newer version of the .NET Framework again, and if so, you should be able to ignore/skip/exclude it.
  • Anonymous
    October 11, 2017
    Hi Aaron - Your post has been very helpful. I had a couple of questions as I am not entirely privy when it comes to .Net Framework. I have a user that is attempting to use a software that is asking to be run on 3.5 but our PCs in the enterprise are on 4.6.1 the latest. So my question is, can both frameworks run concurrently/simultaneously on the PC since they are part of different trees, or do you need to uninstall the latest one, install the 3.5 and then run the application. Can they both coexist and then if the software that is ran needing 3.5 will see it installed?
    • Anonymous
      October 11, 2017
      Hi Mo - The .NET Framework 3.5 can be installed side-by-side with a version of the .NET Framework from the version 4 family. All members of the .NET Framework 4 family are in-place upgrades, so you can only ever have one version from 4 to 4.7 installed on your PC at a time.
      • Anonymous
        October 17, 2017
        You are the MAN Aaron! Thank you.
  • Anonymous
    October 11, 2017
    Also, how I revert back to a different framework? and let's say I do install the 3.5, will all other applications requiring 4.6.1 or equivalent not work?I am trying to understand the concept of what .Net Framework is? Can you explain please and when it is to be used.
  • Anonymous
    May 17, 2019
    The comment has been removed