C# WebClient DownloadFile works only once
Solution 1:
It looks like Dispose() is not working correct within the using() statement:
using (WebClient client = new WebClient())
{ ... }
Workaround without a using() statement:
WebClient client = new WebClient();
client.DownloadFileCompleted += OnDownloadFileCompleted;
when download is completed:
client.Dispose()
It works for me.