in windows xp, its c:\windows\ and its a hidden folder and can find it by manually typing the directory as where you GAC is
(WINNT was .NT 4.0 server or workstation, or windows server 2000, or windows 2000) and if upgraded to windows xp or windows server 2003 WINNT I believe would stay intact only in that scenario, that's what you should use the %windir% global system variable
Im on windows 8.1 64 bit and the gac is still in C:\Windows\assembly
but .net is in c:\windows\Microsoft.NET\ is where the CLR and runtime is
Oddly to the other answer above, it seems I disagree that c:\windows\assembly is the "old gac"
here is my dos results
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.
C:\WINDOWS\system32>cd..
C:\Windows>cd assembly
C:\Windows\assembly>dir
Volume in drive C is OS
Volume Serial Number is DE26-14AA
Directory of C:\Windows\assembly
11/01/2013 01:15 PM <DIR> GAC
11/14/2013 01:10 PM <DIR> GAC_32
11/14/2013 01:10 PM <DIR> GAC_64
11/14/2013 01:27 PM <DIR> GAC_MSIL
11/13/2013 05:36 PM <DIR> NativeImages_v2.0.50727_32
11/10/2013 03:22 AM <DIR> NativeImages_v2.0.50727_64
11/14/2013 01:33 PM <DIR> NativeImages_v4.0.30319_32
11/13/2013 05:36 PM <DIR> NativeImages_v4.0.30319_64
11/14/2013 01:33 PM <DIR> temp
11/14/2013 01:32 PM <DIR> tmp
0 File(s) 0 bytes
10 Dir(s) 27,701,415,936 bytes free
C:\Windows\assembly>
the c:\windows\microsoft.net\assembly I do not think is your Active GAC, I think this is where Visual Studio looks for, when compiling for a specific version x64 or 32 etc, the other c:\windows\assembly is the current state of your machine. but im no expert, just what I see