using Windows.Web.Http; using Windows.Web.Http.Headers; private async void Foo() { // the image var fileStream = await file.OpenReadAsync(); var streamContent = new HttpStreamContent(fileStream); var filename = "myImage.png"; // the text var text = "oompa loompas"; var stringContent = new HttpStringContent(text); // Putting all together. var formDataContent = new HttpMultipartFormDataContent(); formDataContent.Add(streamContent, "myImage", fileName); formDataContent.Add(stringContent, "myString"); // Send it to the server. var response = await (new HttpClient()).PostAsync(uri, formDataContent); }