La forma más fácil de leer desde una URL a una cadena en .NET

Dada una URL en una cadena:

<code>http://www.example.com/test.xml
</code>

¿Cuál es la forma más fácil / sucinta de descargar el contenido del archivo desde el servidor (señalado por la URL) en una cadena en C #?

La forma en que lo estoy haciendo en este momento es:

<code>WebRequest request = WebRequest.Create("http://www.example.com/test.xml");
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
</code>

Eso es mucho código que esencialmente podría ser una línea:

<code>string responseFromServer = ????.GetStringFromUrl("http://www.example.com/test.xml");
</code>

Nota: No me preocupan las llamadas asíncronas, esto no es un código de producción.

Respuestas a la pregunta(1)

Su respuesta a la pregunta