Here is a re-post of one I've made a few weeks ago.
You can also add malware as a possible cause too. Scan with Malwarebytes after updating definitions.
"Here is the comprehensive guide:
1) Remove the current antivirus in safe mode using the tool found here:
AV Uninstallers - Windows 7 Forums
Reboot and install MSE and nothing else, to replace the old antivirus.
2) Update the bios to newest. Set failsafe settings and save, as a test and/or permanent repair.
3) Make sure in the event manager that hard drive errors and not causing the freezes. Defragment the hdds.
4) Update all the drivers from the manufacturers' sites only.
5) Uninstall any unnecessary 3rd party tools that start with Windows.
Use msconfig to disable all 3rd party services temporarily then reboot. See how it goes. If good, enable things one by one while rebooting each time until the issue returns. You've now found the culprit.
That pretty much covers everything with freezes. If you have bsods, then that is entirely different and users should create a new thread with their issue after viewing the sticky thread in that part of the forum."