rsync handles multiple files at a time and is very fast as long as you turn the right options on and off. This can take research to figure out. For instance I usually don't use -a because that implies -I, which causes it to expensively do an MD5 on every single file. I'm happy knowing that the files have the same size and modification time even though theoretically that could be wrong.

rsync is also clearly The Right solution if you're going to have to resynchronize the data.

However when I sit down with it I always need a while to figure out what exact combination of flags I really want to use this time.

Cheers,
Ben