I have a WCF service that accepts streams and saves them to disk. The file writes are done using a FileStream object opened with FileOptions.Asynchronous. When multiple requests hit the service concurrently right after startup, one or more of the requests will block forever in a FileStream.BeginWrite call. All further requests will succeed, regardless of concurrency- it's only the requests made right at app startup that block. It looks to be some kind of internal race in the async FileStream implementation- if I "prime the pump" by making a single async FileStream.BeginWrite call to a temp file when the app starts, everything works fine when I hit it with many concurrent requests. I'm not able to reproduce the behavior outside the WCF service either, so it may have something to do with what kind of thread is making the requests.