It seems that there is no way to modify the Host header for a WebRequest. When you try to set the HttpWebRequest.Headers[“Host”] property you get an ArgumentException with the message “The 'Host' header cannot be modified directly”. If the Host header can be modified indirectly it would be helpful if somewhere in the error or in MSDN an indication of how this is done could be given.
It is important to be able to change the Host header for anyone testing web sites on a shared hosting environment before the DNS settings have been set. It is also needed when writing diagnostic tools for sites hosted behind load balancers.