Let's assume that security is not a concern. The client is already in the "inner ring" and trusted. The problem is still valid. Which way is the fastest to copy data from the client to the server? One real-life example would be data analysis done by No Such Agency that receives from spy satellites images (or live video feed) and each satellite is focusing on it's perimeter. To achieve a good analysis for an entire given region (let's say Taliban mountains) you would need that each client to fast upload it's data to the server whom will then start the algorithm that will spit out the response to the question "Do they have an increased activity in the north or the south?" received from White House war room. As you can see in the above illustrated example the clients can do whatever they like, including but not limited to directly inject data into server process. So, in this case, what is the fastest way do achieve it?
[Okay, well if you're uploading data, then that's your bottleneck, not the performance of intra-computer data transfer. And if you read the question, you'll see that the customer already knew which one was faster. They just wanted to know whether WriteProcessMemory was fast enough for their needs. And there's only one way to know for sure: Measure it and see if it's fast enough for your needs. -Raymond]