Short Answer: Don't use scratched/damaged media.
Long Answer with more details: During boot, Windows has not yet switched to a multi-threaded environment. If any one piece decides to not run asynchronous, the entire boot-process will stall until either A) the process completes or B) windows decides to kill the process. In the case of a CD-Rom drive... it is treated as a device like any-other with a driver, and when that driver is loaded, the first thing it does is query what's in the drive. Unfortunately, this is not an asynchronous process. The CD-ROM drive waits for the drive to return some information about what's inside blocking all other execution of code during the boot-process. Luckily, Windows doesn't get to kill it (or you would end up with a BSOD), but rather the driver has some spiffy logistics in it to stop asking what is in the drive after some period of time. (not exactly sure what that time is) Once windows has finished booting, it switches to a multi-threaded environment which is why the CD-ROM doesn't lock up the whole machine while waiting for the results to come back.
Additionally... prior to the actual "Windows Boot" your BIOS may have some sort of firmware-recovery that can try & access your CD-ROM which is also not running in a multi-threaded environment and suffers from the same "wait for the drive to say something" type problems.