I just spent half an hour diagnosing an issue, and was about to give up when I finally solved it. I wanted to save anyone else out there the time.... I just installed VS 2005 RC1 to start playing with .NET 2.0 in earnest, specifically to ensure SlickUpload compatibility. Lo and behold, when I tried to run a 2.0 website in IIS, I get this big red "Server Application Unavailable" error, with a pointer to the event viewer. When I looked in the event viewer, this is what I saw -- "Failed to execute the request because the ASP.NET process identity does not have read permissions to the global assembly cache." I fiddled around with the GAC a bit, found out that I needed to unregister SHFusion.dll to be able to set permissions, made sure the permissions were set, and still nothing.

The fix? ASPNET didn't have permission to the application directory. As soon as I gave it permission, viola, it worked. Why can't Microsoft finally start using error messages that actually make sense? Arrgh.