Этот конкретный сервер хочет использовать строку userragent, которая указывает, что браузер используется.Это работает:
using (var client = new System.Net.WebClient())
{
client.Headers.Add(System.Net.HttpRequestHeader.UserAgent, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134");
client.DownloadFile(NonWorkingUrl, "c:\\temp\\a");
}
}
Нет особой причины, по которой я использовал файл загрузки - просто поиграл с вещами.Если вам нужен байтовый массив в вашем приложении, тогда обязательно используйте downloaddata:)