Dan, that is correct, when a unicast host requests the image it is sent to the machine and then decompressed at the level.
For multicast, the image is decompressed and sent in “sections” to the hosts. Each machine will wait for the others to catch up with the current “section” before they will move on to the next step. This causes a high load on your server, but it helps when you are imaging a large amount of computers that are the same model.