I've been console game developer for quite some time, and async stuff has always been around for us (but not so network oriented for the stuff I was doing - streaming sound, file I/O, DMA from one cpu to another, etc.)
But If I have to direct it, then precooking your data, so data once loaded only pointer mixup is needed was the basic to get streaming stuff in a game (Spiderman-2, Ultimate Spiderman, Spiderman 3).
Then comes stuff like ability to cancel async jobs, and off course start several at the same time, giving some more info to the underlying code - which should be done first. I can go on technical details in few pages.
What exactly is he talking about?