RAM can be a bottleneck here. And when it's not RAM, it's HD.
The world calculations are relatively cheap (unless you're burning a forest), but those submaps add up. And since there is no mechanism of automatically loading/unloading them and the format they are saved in is rather sparse (map is saved like [ "grass", "grass", "grass", "dirt" ] etc.), it can take a large chunk of load times.
For example, a typical reality bubble contains roughly 30 map squares (121 submap squares). But then, in z-level mode, that grows to 21*30, because each z-level keeps a whole "slice" of the world in memory. They aren't all loaded from HD, though - most z-levels are solid rock or pure empty air.
Each map square is at least 7 kb. Now, parsing 7 kb is fast, parsing 30 files each of which is 10 kb is also fast, but acquiring those 10 kb from 30 files at once while the system is swapping hard due to lack of RAM - that may take a noticeable while. Windows is particularly bad at managing memory and files.
Then there is saving, which has to take all those squares and dump a large part of them to the hard drive.
It's not a big deal on a typical sane system, but apparently it hurts on USB drives and such.