Предполагается, что вы говорите на стороне клиента:
Один из способов сделать это - создать класс FileContent, производный от HttpContent.В переопределениях вы получите NetworkStream, когда HTTPClient будет готов к приему потока.
Если вы спрашиваете о серверной стороне, вы можете просто получить HTTPRequestMessage и получить доступ к свойству httpRequestMessage.Content.ContentReadStream.
Обновление
По умолчанию транспорт WCF ограничен отправкой сообщений на 65K.Если вы хотите отправлять сообщения большего размера, вам нужно включить «Режим потоковой передачи» и вам нужно увеличить размер MaxReceivedMessageSize, который служит лишь средством защиты от того, чтобы кто-то не убивал ваш сервер, загружая массивный файл.
Таким образом, вы можете сделать это с помощью конфигурации привязки или в коде.Вот один из способов сделать это в коде:
var endpoint = ((HttpEndpoint)host.Description.Endpoints[0]); //Assuming one endpoint
endpoint.TransferMode = TransferMode.Streamed;
endpoint.MaxReceivedMessageSize = 1024 * 1024 * 10; // Allow files up to 10MB