I personally use CPUID HWMonitor, which has all the things I want in temps monitoring
If you want something more with info and some things you can change then i would say to use GPUZ and CPUZ
I use Speccy as it allows monitoring of pretty much everything on your system.
+1 for Speccy too! Though I use that for describing what's installed rather than temps (though it does give them).
Without a doubt MSI Afterburner
The OSD can be altered in size, position and colour. And be customised to show as much or as little info as you like.
Not only is it great to watch the temps and make sure nothing is cooking, but it helped me diagnose stuttering I experienced while gaming. I could see that the gpu wasnt being used at 100% while playing games, which led me to inspect the Nvidia driver settings and discover the power managment setting at 'Adaptive' was having a negative effect of game performance.
Its personal choice at the end of the day, but works great for me
+1 for Speccy. I would use HWMonitor, but for some reason it doesn't register my dGPU, which Speccy does. I actually have Speedfan, Speccy and HWMonitor installed and check the temps on all of them to make sure I get an accurate reading.
HWMonitor registers your dGPU if you start it AFTER the dGPU gets called upon. i.e. Start a game, Alt-Tab out then start HWMonitor.
Now isn't that interesting? Very many thanks for the tip! +rep deserved and given.