I recently moved many, many files at 2 different locations. It was exactly the same set of data on each, using an identical robocopy command, but what took under 30 minutes on Windows Server 2012 R2 at our HQ (using PowerShell v4) took roughly 15 hours on Windows Server 2008 R2 SP 1 (PowerShell v2) at our ISP's server center. The latter of the two servers actually has more RAM and CPUs (twice as much, actually: 512 GB memory, 64 cores).
The only other obvious hardware difference (to me) between the two tasks is that on the 2012 server I moved the data from a local disk to a SAN volume whereas on the 2008 R2 server it was across the SAN (from LUN to LUN). I wouldn't expect this to be the culprit though since the iSCSI bandwidth between the source and destination volumes is the same on each machine.
Maybe I'm missing something so I wanted to put this out here and see what insights you all might have.