Windows is prone to startup problems as it tries to launch everything that is set to launch, when you first switch on, at the same time.
I recommend using Startup Delayer which gives you control over the order that programs launch and also over the order they start. By introducing a one or two second delay between programs starting, and over, say 30 seconds, what was taking several minutes to happen is reduced to 30 seconds.
Get Startup Delayer (free) from here:
http://www.r2.com.au/software.php?page=2&show=startdelayInternet security suites such as Norton and McAfee are another common cause of slow starting in Windows. I ditched Norton a few years ago and now I use NOD32 for antivirus and Zone Alarm (free) for the firewall. NOD32 isn’t free but it’s one of the best performing antivirus programs and isn’t a drain on system resources. If cost is a problem, consider Avast (or AVG) for free antivirus software.
Eset, the company producing NOD32 have recently released a complete security package, but they claim to have built it with the aim of preventing that resource demand that programs like Norton place on a system, Worth considering if you want an all-in-one security package