Time to try Clean Boot - here we try to narrow down error causing start up issues. Keep careful notes as this gets confusing. Start in Safe Mode, then using msconfig define and initiate Clean Boot in next restart with all non-Microsoft services 'off'.. Restart. Confirm that your system will operate with just Microsoft services enabled.
If system is 'ok' then the issue is somewhere in the group of services which you turned off. Make a list of these and form a strategy for enabling a few and restarting system until you can narrow the issue down to a single service.