Long shot time
Start/Run/msconfig/Startup tab.
Untick all the ticks in the Start column. Click Apply. (Make a note of what you do have ticked, before you untick)
Reboot and see what happens.
Disconnect from the internet before you do, as AV/Firewall will not load on boot.
Long shot 2. Do you have sufficient space on your hard drive for Windows to boot? say 10 GB of empty space?