I just noticed that .NET 2.0 now supports GZIP compression natively. I bring it up on the off chance that this gets indexed by a search engine and others will find it useful like I did.

WebClient client = new WebClient();
WebRequest request = WebRequest.Create(uri);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = null;

if (response.ContentEncoding == "gzip")
reader = new StreamReader(new GZipStream(response.GetResponseStream(), CompressionMode.Decompress));
else
reader = new StreamReader(response.GetResponseStream());

string html = reader.ReadToEnd();

reader.Close();

Simple enough to use. I went looking for this after doing a few requests and getting back rubbish data and realised gzip must be being used.