getResponse doesn't actually wait for the response by the way. It returns (as would be expected from the method name 'get') a webresponse from your webrequest. It implements IDisposable so be sure to do something like
[highlight=vb.net]
Dim webReq As Net.HttpWebRequest = Ctype(Net.WebRequest.Create("ur"), Net.HttpWebRequest)
Using webResp As Net.HttpWebResponse = CType(webReq.getResponse, Net.HttpWebResponse)
End Using
[/highlight]
But, when you say 'writes a file', do you mean a local file, or a hosted file? Both are easily created and managed directly from VB.NET