Try to use something like STARTER from CodeStuff ..
**broken link removed**
A must have, highly configurable and easy to use utility for managing your windows startup. One can choose which programms are allowed to run when Windows is starting up. Disable an annoying application in one click of mouse! Terminate an unwanted or hanging process, even a Windows service. Freeware among a lot of analogues.
It is because of 4 reasons:
1- old windows
2- Anti Viruses
3- A bad installed program or an unnecassary program
4- low disk space in your windows drive
for the first one try regclean (Find it in web) or repair your windows
for the second one change your anti virus
for the third one go to Run and type msconfig then go to the last tab and recheck the unnecassary programs
for the low space you shoud have at least 1 GB free in your windows Drive
It is rarely because of a bad installed program, If you feel this problem after installing a specific program try to remove and reinstall it.
In some situations, a bad restart can make this problem. make sure your hard disk is not damaged. Try Disk Doctor or a similar program.
Go and grab a program from Microsoft called bootvis. Here is the link: **broken link removed**
The program will measure your startup time and give you a breakdown of what its doing in that time. You can use the report to determine what is making the machine take so long to boot.
If you can't make sense of the report, post it online so somebody who knows how to interpret the report can make sense of it and make further recommendations based on it. (Someone like me )
My new XP machine has two gigabit ethernet ports, but I was using only one of them. Windows took a long time to boot, and many common Windows operations suffered delays of several seconds. I disabled the unused ethernet port in Device Manager, and Windows immediately became snappy and fast.