run a disk check (Rclick a drive -> Properties-> Tools -> Check disk for Errors) and also do a RAM check http://www.petri.co.il/windows-memory-diagnostic-tool.htm
if the disk has issues, the chkdsk should fix it if it is possible, and if the ram is faulty or incompatible, replace it.
Check the SMART stats for your disk, is it healthy? I use Speedfan to check SMART metrics.
Defragment your hard disk.
also look in Device manager. do you have any devices with a warning exclamation point icon? if so, are they integrated components or peripherals? attempt a troubleshooting operation to try to fix it.
use sysinternals autoruns to check for and disable unneeded startup items that may be causing problems.
check your CPU heatsink fan, and make sure it is powering up and spinning fast. if it has died your CPU may be seriously overheating. Bootup is a very hot time for a CPU, because the ACPI has not loaded all the power management drivers yet and cannot automatically adjust as well as after boot.
check your event log for large numbers of errors related to a boot.
make sure your disks are in AHCI mode (don't change it from IDE without an internet search first as you may have to adjust things to allow AHCI to boot if windows was set up in IDE mode).
if all else fails, try a rebuild. if the issue persists on a clean build, then you have a hardware problem.