My first guess since it eventually booted is a failing hard drive.
You can try booting the Apple Diagnostics. If the online diagnostics take a long time to boot, then it is unlikely using an external USB3 SSD will be an option. Unfortunately the diagnostics don't detect most drive failures.
You can try running DriveDx to check the health of the hard drive assuming the system can complete the download. If there is any "Warning" or "Failing" notices for the hard drive, then the drive is worn out or failing respectively. This does not necessarily apply to the SSD. If there are no warnings or errors, then post the complete DriveDx text report here for both the hard drive & SSD so we can review them.
If the hard drive is not worn out or failing, then try booting into Safe Mode in case some third party software is really having problems.