Ваш код выглядит хорошо, поэтому я не думаю, что проблема в этом ... но я бы предложил следующее:
1) Возможно, ошибка находится на другом конце URL-адреса ... поэтому попробуйте нажать Google и посмотреть, хороший ли возвращенный контент.
2) Поместите точку останова в точку responseReader.ReadToEnd () и посмотрите, хорошо ли то, что из этого выходит.
3) Если этот код выше находится на странице ASPX ... вы обязательно вызываете "Response.End ();" после последней строки кода? (не "resposne.close ()", а "Response.End ()").