Stopping unnecessary programs from starting with Windows and running in the background is part of what causes long boot times but there are other reasons for excessive boot times and slow running in general as well.
To start with:
Take advantage of Microsoft's Windows One Care Free Scan
Go to Windows Live Onecare Free Scan
It will say "Get a free PC safety scan"http://safety.live.com/site/en-us/default.htm
Make sure you click "Full Service Scan"
in the middle of the page and not the "Try It Now Free" on the right side.
Allow it to download an Active X component.
Choose "Complete Scan" in the window that opens
Do not click on anything else that offers you a free trial or to sign up if you live in the US.
Allow it to scan - it may take quite, maybe two hours or so depending on how big your hard drive is and how fragmented your registry and drive are.
After finishing the scan, reboot, and follow the instructions here:
Slow Computer?, Use this troubleshooting checklisthttp://www.bleepingcomputer.com/forums/t/44690/slow-computer/
You can use either of the methods mentioned in the previous two posts, msconfig, which is sometimes very confusing, or Winpatrol, or you can use the ap that I recommend because it is easier to use and you are less likely to make mistakes using it as it better identifies the entries in the startup menu so you are less likely to stop any you should not stop.
Startup Inspector (manages startup menu – helps you identify aps in the startup menu so you can disable unnecessary programs from running in the background when they are not needed)
Startup Monitor (a small freeware ap available on the same page to notify you and require your permission for any program to add itself to your startup menu)http://www.windowsstartup.com/download.php