I think software. You can check:
Boot computer
After options pass, but before windows starts loading, hold the F8 key (ctrl could work)
Select Safe Mode
If windows loads, go to start>run>msconfig>startup
There you can check what loads with windows. Maybe there is a problem there. If you don't know what to disable, you can also try disabling all the entries, and then try enabling them until you find the startup entry which prevents booting.
If Safe Mode does not load, there is probably a registry problem which is very complex to resolve.
You'll also want to make sure your computer does not have any adware/malware/spyware which often causes such startup problems. You can download free removers like spybot S&D for that.