A couple of notes about .NET Framework 4.6 setup behaviors
I have gotten a couple of questions from customers recently about the behavior of .NET Framework 4.6 setup, so I wanted to post some additional details about how it behaves behind the scenes.
The .NET Framework 4.6 is an in-place upgrade for all of the following versions of the .NET Framework:
- .NET Framework 4
- .NET Framework 4.5
- .NET Framework 4.5.1
- .NET Framework 4.5.2
An in-place upgrade means that if you install the .NET Framework 4.6 when any of the above versions of versions of the .NET Framework are installed on your PC, .NET Framework 4.6 setup will upgrade them and you will be left with only the .NET Framework 4.6 installed afterwards. In addition, any attempts to install older versions of the .NET Framework 4 family when the .NET Framework 4.6 is already present will result in .NET Framework setup blocking you from installing because it detects that a newer version is already installed.
The .NET Framework 4.6 is designed to be compatible with all applications created with any version of the .NET Framework from 4 to 4.6, but there are sometimes application compatibility issues that arise, such as an installer that tells the user that they must install the .NET Framework 4.5 even if the .NET Framework 4.6 is already installed. In cases like this, you might need to revert back from the .NET Framework 4.6 to an earlier version of the .NET Framework 4 family. To do that, you must uninstall the .NET Framework 4.6 and then re-install the earlier version of the .NET Framework from the .NET Framework 4 family.
The .NET Framework 4.6 comes installed as a part of the OS on Windows 10, and there is not a way to uninstall it. If you run into an application compatibility issue with the .NET Framework 4 family on Windows 10, you cannot revert back to an earlier version of the .NET Framework 4 family by using the uninstall and re-install instructions that I listed above like you can on older versions of Windows. In that scenario, I typically recommend contacting the application manufacturer to see if they have any patches available that will allow their application to install and run with the .NET Framework 4.6 installed.