Use RichCopy. It’s a Microsoft tool that is multi-threaded. You can set how many files/directories to copy at once and it can really max your performance.
I’m using it to clone a drive. Normally I would just use Acronis for this, but I’m copying from a hard drive to a Windows Storage Space (which isn’t supported by Acronis 2017).
Update: As I’m working on transfering 3TB of all types of files, I’ve noticed that using FreeFileSync specificially with a filter limit on file size (100MB at first then down to 10MB for a second pass) seemed to be the most efficient way to transfer all the larger files. It also copies multiple files at once, but when it was transferring small files it was quoting me an insane multi-day ETA. So I’m running this, then going to use RichCopy for all the tiny stuff and then finally make sure everything is properly synced with FreeFileSync. If you want to save all of the hassle, FreeFileSync has always done the job for me. This time it just seems like I needed something more specific to tons of small files.