Finding your .NET Framework version in Windows
The fastest way to check your .NET Framework version is through the Windows Registry, which stores the information in a single location. Open the Registry Editor by pressing Windows key + R, type regedit, and press Enter. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP. You will see folders labeled with version numbers like v4.0, v3.5, or v2.0. Each folder contains a Release value that tells you the exact version installed.
If you prefer not to use the Registry, Windows Settings offers a simpler path. Go to Settings > Apps > Apps & features, then search for ".NET" in the search box. You will see each installed .NET Framework version listed with its full version number. This method works on Windows 10 and Windows 11 and shows you everything at a glance without navigating menus.
Using Command Prompt to check .NET Framework
Command Prompt gives you a quick text-based view of your .NET versions. Press Windows key + R, type cmd, and press Enter. At the command prompt, type reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s and press Enter. The output will list every .NET Framework version on your computer along with its Release number.
For a cleaner, more readable output, you can use PowerShell instead. Press Windows key + R, type powershell, and press Enter. Then paste this command: Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse | Get-ItemProperty -Name version -ErrorAction SilentlyContinue | Select PSChildName, version. PowerShell will display the version numbers in an organized table format.
Key Takeaways
- The Registry Editor path HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP shows every .NET Framework version installed on your computer.
- Windows Settings under Apps & features is the easiest method if you want to avoid the Registry or command line entirely.
- Command Prompt and PowerShell both retrieve the same version information but display it in different formats.
- The Release value in the Registry corresponds to specific .NET Framework versions, so you may need to cross-reference it with Microsoft's official version chart if you need the exact build number.
Understanding Release numbers and version mapping
The Registry shows a Release number that does not always match the version number you see in Settings. For example, Release 394802 corresponds to .NET Framework 4.8.1, while Release 528040 is .NET Framework 4.8.2. Microsoft maintains an official chart that maps each Release number to its exact version, but you do not need to memorize it — the Settings method shows the human-readable version directly.
If you see multiple entries in the Registry, that is normal. Most Windows computers have several .NET Framework versions installed because different programs require different versions. Version 4.7.2 and 4.8 can coexist without conflict. The newest version does not replace older ones, so you may have five or six entries even though you only installed one or two intentionally.
Checking .NET Core and .NET 5+ versions separately
.NET Core and newer versions (.NET 5, 6, 7, 8) are different products from the older .NET Framework and store their information in a different location. If you installed .NET Core or a newer version, the Registry method above will not show it. Instead, open Command Prompt and type dotnet --version to see which version is installed. If the command does not work, .NET Core is not installed on your system.
You can also check all installed .NET versions at once by typing dotnet --list-sdks and dotnet --list-runtimes in Command Prompt. These commands show every .NET SDK (the development tools) and runtime (what programs need to run) you have installed. This is useful if you develop software or need to know whether your computer can run a specific program that requires .NET 6 or later.
What to do if you cannot find your version
If you check the Registry and see no .NET Framework entries at all, your computer may have only .NET Core or a newer version installed, not the older .NET Framework. This is common on newer Windows installations. Try the dotnet --version command in Command Prompt to see what you actually have.
If neither method shows anything, .NET may not be installed at all. Some programs bundle .NET with their installer, so you might have it without knowing. Check your installed programs list in Settings for any process that mentions ".NET" or "runtime" in its name. If you need .NET Framework for a specific program and cannot find it, you can read it from Microsoft's official website, though most programs will tell you if they need it during installation.
Why you might need to know your .NET version
Programs often require a specific .NET Framework version to run. If you try to open an process and get an error message about .NET, checking your version tells you whether you need to install something new or update what you have. Some older programs need .NET Framework 3.5, while newer software might require .NET 6 or 7. Knowing what is on your computer saves you troubleshooting time.
Developers and IT professionals check .NET versions to may support their code will run on a user's computer and to plan updates. If your workplace uses software that requires a specific version, your IT department may ask you to verify what you have installed. The methods above give you the exact information they need without guessing or relying on outdated documentation.
Frequently Asked Questions
Can I have multiple .NET Framework versions at the same time?
Yes. Older versions like 3.5 and 4.0 can coexist with newer versions like 4.8 on the same computer. Programs that need a specific version will use that version, and newer versions do not replace older ones. This is by design and causes no problems.
What is the difference between .NET Framework and .NET Core?
.NET Framework is the older system used by Windows desktop programs. .NET Core (now called just ".NET") is newer, faster, and works on Windows, Mac, and Linux. They store version information in different places, so you need to check both if you want to know everything installed on your computer.
Do I need to update my .NET Framework version?
If a program asks for a specific version and you do not have it, you need to install or update. If everything you use runs fine, you do not need to update. Older versions are still supported, though Microsoft recommends staying current for security reasons.
Why does the Registry show a Release number instead of a version number?
The Release number is how Windows internally tracks versions. Each Release number maps to one specific version, but the mapping is not obvious to humans. The Settings method shows the readable version number instead, which is why it is easier for most people.
What if the command prompt command does not work?
Make sure you typed it exactly as shown, including all quotes and backslashes. If it still does not work, you may not have administrator access. Right-click Command Prompt and select "Run as administrator," then try again.