Si bien VB.NET es flexible en ciertas cosas, no siempre es la mejor y/o la más óptima forma de realizar las cosas, como te dije teniendo a mano tan extensa libreria de clases que ofrece .NetFramework, porqué no aprovecharlas?....
De hecho Utilizando, WebClient.DownloadString tendrias un mejor control de lo que va a pasar en tiempo de ejecución.
Igual que tú, Yo tampoco soy bueno programando solo conozco pocas cosas, pero con el tiempo aprenderás y entenderás por que es mejor hacerlo de una u otra forma(como por ejemplo especificar el tipo de retorno en una función).
Saludos.