There's many things that cause a computer to boot slowly. You can not compare your boot times to another PC as each will have different programs, services...ect it's loading at startup. To speed up the time..check your bios and turn off things like "Floppy seek", and any BIOS Antivirus's.
For windows...disable any unused services so windows isn't loading something you never use. Enter your msconfig tab and disable anything thats not really needed at startup. Things that fall into this classification are programs such as...
ATI Control Panel
Adobe
Nero
AIM.....ect
While you can still launch these programs anytime..there is no need to have them running in the background when not in use. Extra seconds are nothing compared to minutes. The more you add to the PC in time...the longer the boot process to load all those goodies up.