There isn't a "nice" way - Directory.Move can't work across volumes since it just (effectively) re-writes the locations instead of moving any data.
Recursive File.Copy operations are one solution, but there is a "cheat".
Add a reference to Microsoft.VisualBasic, then this will work:
new Microsoft.VisualBasic.Devices.Computer().FileSystem.CopyDirectory(sourceDir, outputDir);
Nasty - but effective. You can then delete the source when completed.