private Tuple<String, HttpWebResponse> getResponseText(HttpWebRequest http, Encoding enc) { var response = (HttpWebResponse) http.GetResponse(); // should catch timeout exception using (var reader = new System.IO.StreamReader(response.GetResponseStream(), enc)) { return Tuple.Create(reader.ReadToEnd(), response); } }