I'm not sure what exactly the client does, but I'd expect we need to flush after a write, to make sure that the event left the client buffers and was sent to the server. I don't think a client side flush would force a server side flush. would it? If that's the case then there should be client.Flush() after this write as well.