На целевом сервере должна быть веб-страница, на которой за исключением изображения появляется изображение. Откройте файловый поток, загрузите изображение в память в байтовом буфере. Используйте информацию о файле, чтобы получить такие данные, как длина, вам понадобится позже. Откройте бинарный ридер и прочитайте изображение в буфер. Откройте WebRequest.Create со своим URL-адресом, установите метод публикации, хороший длинный тайм-аут, длину request.content равной длине байтового буфера, откройте экземпляр потока для вашего экземпляра request.GetRequestStream (). Примерно так: создайте двоичный модуль записи, используя поток, запишите файловый буфер, закройте их, откройте веб-ответ, запустите программу чтения потоков для GetResponseStream и проверьте, что полученные байты соответствуют отправленным вами. Я нашел хороший код на EggheadCafe при передаче данных.