I've spent some time on this. Don't be afraid to use multiple threads for your copy operations, even though you will find some sources which claim this is not faster. It's not true - just look at
Robocopy.
In fact, Robocopy may be your whole solution.
-Pete