Came across this error when we had more than one person working on a VS project which is hosted on a VM.
The setup script for a new user gives each person their own web site.
Because there is only one version of IIS, when multiple people try and debug their version, you get the error:
Unable to start debugging on the web server. A debugger is already attached.
The solution turned out to be simple. The debugger attaches to a process which is itself attached to an application pool.
Give each user an application pool i.e. make a new one in IIS Manager.
Attach each person's web site to their application pool in IIS Manager.
Just make sure that the pool is configured the same way as the original e.g. same .NET framework and managed pipeline.