I use Acronis True Image for backups, and it's bitchin'. (Shameless plug).
I had a cracked copy of Acronis 2013, and it was so good I bought Acronis 2015. I also recently upgraded to Acronis 2017 to get some of the new features, and it's amazing. There might be better software out there, or cheaper/free software, but Acronis does everything cleanly and without issue for me.
But if you had backup software like this, it would be able to restore your programs, etc, on the new HDD.