I'm going to do my best at back-tracking this problem. From my investigations, there are several things which might get you into this situation, but I'll simply describe mine... While trying to do some instrumentation on a web app in Visual Studio, I was getting the following error:
The web site could not be configured correctly; getting ASP.NET process information failed. The server may not be running a version of Asp.Net version 2.0 or greater. Requesting 'http://localhost/myapp/VSEnterpriseHelper.axd' returned an error: The remote server returned an error: (500) Internal Server Error.
As the error mentions, if you go to the aforementioned URL in a browser, you get a Server Application Unavailable error. Sometimes, you might also see an HTTP 404 (file not found error), which will actually be phrased, Server Error in 'myapp' Application; The resource cannot be found, thanks to .NET. Further investigation will bring up an error in the Application log of the Event Viewer, as well.
It is not possible to run two different versions of ASP.NET in the same IIS process. Please use the IIS Administration Tool to reconfigure your server to run the application in a separate process.
Of course, looking at this, you're probably asking why the heck there are conflicting versions when you've already set the .NET version in IIS -- umm, you have set that, haven't you? Anyway, the problem ultimately comes down to the app pool. I could go into describing the changes in IIS6, which is in Windows Server 2003, but that's been done before and all we care about is a fix, right? Right.
If you open the IIS Manager (Start > Run... > inetmgr, Enter), right click on Application Pools, select New > Application Pool..., and give it a custom name and base it on the DefaultAppPool. From here, all you have to do is change the app pool for your website or virtual directory at the bottom of the Home/Virtual Directory tab in the Properties dialog. Once you've done these two things, you should be good-to-go.