One of the most frequent causes is a faulty RAM stick. Can you run memtest to check this?
Another possible cause is a damaged hard disk. A test of your system drive is anyway not a total waste of time even if is not the cause of your problem.
Another possible cause is a faulty PSU.
Another possibility is an error somewhere in operative system (it is a real nightmare to find exactly where is the problem ). Try to reinstall all drivers, often this solve any issue
Do you overclock? Try to reset all BIOS setting to default and see if this solve.