title: What gacutil.exe should I use?
body: <p>So, on a Win 2008 R2 Std x64, I have 6 (six) gacutil.exe all different (not counting ones in VS folders), in:</p>
  <ol>
  <li><strike>c:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin</strike></li>
  <li><strike>c:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64</strike></li>
  <li><strike>c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin</strike></li>
  <li><strike>c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64</strike></li>
  <li>c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools</li>
  <li><strike>c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64</strike></li>
  </ol>
  <p>Questions are:</p>
  <ol>
  <li>Does <code>x64</code> versions have any difference in behavior?</li>
  <li>Should I prefer <code>v7.0A</code> versions to other <code>v6.0A</code>?</li>
  <li>Should I use <code>NETFX 4.0 Tools</code> versions for .NET 4.0 assemblies, and the &quot;standard&quot; version for the rest?</li>
  </ol>
  <p>Or, if there is some general type article on the subject, I will be grateful.</p>
  <p><strong>Update 1.</strong> Concerning <a href="https://stackoverflow.com/a/9889805/735446">Hans Passant's answer</a>:</p>
  <ol>
  <li><a href="http://msdn.microsoft.com/en-us/library/ex0ss12c.aspx" rel="nofollow noreferrer">gacutil.exe</a> <em>is a .NET Framework Tool</em> part of a &quot;Build, Deployment, and Configuration Tools (.NET Framework)&quot; as now obsolete (!) <a href="http://msdn.microsoft.com/en-us/library/34149zk3.aspx" rel="nofollow noreferrer">shfusion.dll</a> was;</li>
  <li>Indeed v6.0A are from VS2008 install, and can be ignored (1, 2);</li>
  <li>The 64-bit explanation theory also sounds reasonable. I also suppose that there is most probably an <a href="http://www.microsoft.com/download/en/details.aspx?id=12173" rel="nofollow noreferrer">IA64 version of gacutil.exe</a>, so it's like a &quot;tool copy for each platform&quot;, it's just happened so that the x86 version runs fine everywhere because of WoW64. Minus 2 gacutil version from the list (4, 6);</li>
  <li>The part about which version to use, seems to be wrong. V4.0 gacutil.exe detects and places assembly according to its target CLR, and works fine for both .NET 4.0 and earlier version assemblies. So the question is, why leave V2.0 gacutil.exe? My guess would be for the purpose of deployment on environments there.NET4.0 is unavailable.</li>
  <li>To use or not to use GAC, wasn't in the question. So I leave the last paragraph with no comments.</li>
  </ol>
  <p><strong>Update 2.</strong></p>
  <p>So, to me seems like one can safely use either number 3 (then .NET4.0 is unavailable) or number 5 otherwise for all GAC operations on Windows x86 and x64. And the answers to the questions are:</p>
  <ol>
  <li>No.</li>
  <li>Doesn't matter, but using newer versions seems more logical.</li>
  <li>No, you can always use <code>NETFX 4.0 Tools</code> version (if .NET4.0 is available) for all GAC operations.</li>
  </ol>