I have "Microsoft.Web.Services2.dll" V2.0.3.0 in my GAC of two machines.
I am running this line in both of them:
Assembly.Load("Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35");
(note the version is 2.0.0.0 and not 2.0.3.0)
On one machine this fails (as I would expect). In another it works and the loaded dll is 2.0.3.0. Actually on this machine every version lower than 3 works (and loads 3).
How can you explain this?