How to Check Which Version of Microsoft .NET Framework is Installed in Windows?

Recently we posted a topic containing official download links for all Microsoft .NET Framework versions:

What is Microsoft .NET Framework? Download Links for All Versions Inside

One reader asked us how to determine which version of .NET Framework is installed in our system? So today in this topic, we’ll tell you the procedure to find out installed version of .NET Framework in your Windows.

Advertisement

There are 3 easy way to find out the version of .NET Framework installed in your system:

  • Using Windows Explorer
  • Using Registry Editor
  • Using Command Prompt

Method 1: Using Windows Explorer

All Microsoft .NET Framework versions are installed in following directory:

%windir%\Microsoft.NET\Framework\

Where “%windir%” represents “Windows” directory present in the system drive where Windows is installed in your system e.g. C:\Windows\.

So just type the above mentioned path in RUN dialog box or in Windows Explorer addressbar and press Enter. It’ll open the directory as shown in following screenshot:

Check_NET_Framework_Version_Inst-1.png

Here in this folder, you can find out which versions are installed.

Advertisement

Method 2: Using Registry Editor

You can also find out .NET Framework version using Registry Editor:

1. Type regedit in RUN or Start Menu search box and press Enter. It’ll open Registry Editor.

2. Now go to:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP

3. Under this key, you’ll see separate keys for each .NET Framework version installed in your system.

Check_NET_Framework_Version_Install.png

Method 3: Using Command Prompt

Here is another method to find out all Microsoft .NET Framework versions installed in your Windows:

1. Open Command Prompt from Start Menu and execute any of following commands:

wmic /namespace:\\root\cimv2 path win32_product where “name like ‘%%.NET%%'” get version

dir %windir%\Microsoft.NET\Framework /AD

You can copy the above mentioned command and then open Command Prompt, right-click on its titlebar and select “Edit -> Paste” option. It’ll quickly paste the whole command.

2. Wait for a few seconds and it’ll show a list of all .NET Framework versions installed in your system as shown in following screenshot:

Find_Microsoft_NET_Framework_Version_Command_Prompt.png

Thanks to our readers “TheAslan” and “NoOne” for sharing the DOS commands…

Also Check:

How to Check Which Windows Version is Installed in My Computer?

[Tip] How to Find Out the Date and Time When Windows was Installed in Your Computer?

Published in: Troubleshooting Guides

About the author: Vishal Gupta (also known as VG) has been awarded with Microsoft MVP (Most Valuable Professional) award. He holds Masters degree in Computer Applications (MCA). He has written several tech articles for popular newspapers and magazines and has also appeared in tech shows on various TV channels.

Comments

NOTE: Older comments have been removed to reduce database overhead.

  1. i have to install 4.0 network frame but …………..i don,t know from where i can get dis???plz help me

  2. Might be a little late in commenting however something worth noting regarding method 3, suggest amending to

    ‘wmic /namespace:\\root\cimv2 path win32_product where “name like ‘microsoft%.NET%'” get name, version’

    if going to use as the original will bring back all products installed on the system containing the string ‘net’ and only version not name, as such can cause confusion as to FW installed. For example returns ‘Microsoft Sync Services for ADO.NET v2.0 (x86) 2.0.1215.0’, this is not .net FW 2…

  3. Just a small, but very important, correction to the above. After entering RUN %windir%\Microsoft.NET\Framework\
    do NOT press ENTER as this will result in the computer in question being shut down!!!

    Duhhh …

  4. Ok, why the versions 3.5 or 2 are not displayed in Command Prompt? They are installed or embedded, right?

  5. When you query Win32_Product with WMIC or any other method, it automatically does a repair on every single package that is installed. Check your Application event log if you don’t believe me.

  6. A nice tool that I use often as a support engineer is .NET Version detector from asoft.
    asoft.be/prod_netver.html

    It can show all the info visually and shows to which CLR it belongs; export it to text and xml file and it contains the direct downloads to the runtimes & sdk’s. It’s also just 1 executable.

    In the past I lots of problems getting this info via registry/installed programs/… but with this tool it’s a lot easier to get this info from customers! πŸ™‚

    My 2cts

  7. strangely, the command line version does not work in an Admin command window, but it does work in a non-admin command window.

  8. If i have .NET framework 4.0 installed, but programs running with framework 3.5 refuse to run on my machine, can i just install framework 3.5, and the programs start running (with framework 4.0 still installed and programs running with framework 4.0 can still run)? or will framework 4.0 become useless with the installation of framework 3.5, rendering programs running with framework 4.0 useless? I guess what i’m trying to ask is, can framework 4.0 and 3.5 run on the same machine? can more than one framework run on one machine? For example can framework 3.5, 4.0, 4.5… run on one machine, and each running the programs each intend to?

  9. Thanks for Method 3: Using Command Prompt
    Its is very usefull and we can get the result soon.

    Thanks

  10. The command line doesn’t work. All it reports is “No Instance(s) Available.” which is not helpful. I’m in Windows 8.1 and need to find out if .NET 4.5.2 is installed, or if it’s only 4.5.1. Why does Microsoft make something so simple so difficult?

  11. @Ed

    if excist %windir%\Microsoft.NET\Framework\v4.0.30319\SetupCache\v4.5.51209 then .net 4.5.2 is installed πŸ˜‰

  12. I would suggest avoiding the wmic query of the Win32_Product class, which has special considerations and isn’t suitable for general use like this.

    Namely,
    “Warning Win32_Product is not query optimized. Queries such as “select * from Win32_Product where (name like ‘Sniffer%’)” require WMI to use the MSI provider to enumerate all of the installed products and then parse the full list sequentially to handle the β€œwhere” clause. This process also initiates a consistency check of packages installed, verifying and repairing the install. ”

    This behavior is usually *not* what you want (repairing MSI installations) just to find out a build or version number.

    See URLs,
    msdn.microsoft.com/en-us/library/aa394378
    and
    support.microsoft.com/en-us/kb/974524

    For me, this Powershell registry query works as good as any:
    For .NET gci HKLM:”\SOFTWARE\Microsoft\NET Framework Setup\NDP”

    for .NET => 4.0,
    gci HKLM:”\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full”

    I didn’t tease out the exact strings from the returned object, but that seems to get the job done quite easily, and works even on older OSs that still have Powershell 2.0.

    Hope this helps,
    /Acey

  13. Download and Run this PowerShell script: gallery.technet.microsoft.com/How-to-determine-versions-d3669799

Leave a Comment

Your email address will not be published. Required fields are marked *

NOTE: Your comment may not appear immediately. It'll become visible once we approve it.