Motherboard Monitor (and the BIOS) may not be 100% accurate, but they give a pretty good idea of what the temperatures are.
None of those programs out there are accurate. Neither are your BIOS. Spend 15 bucks and get a thermal sensor that can be mounted into your case. I ripped the thermal sensor off my old hardcano 9 and mounted it into a 5.25 bay cover. Its the only way to get accurate temps.
Thing is though, those thermal sensors use the same thing to measure temps that the motherboard uses - thermistors. Most components like that usually have a 5% tolerance, so their readings may vary.
Keep in mind that you can never measure the internal temperature using a probe. There is a diode on the CPU. This diode is on the same semiconductor die as the CPU. The temperature of the die is almost identical to the temperature of that diode. The voltage accross the diode is what is used to determine the temperature.
Obviously, there may be inaccuracies in the way MBM5 calculates that temperature.
A probe will measure the temperature of the plastic (IC package), which is cooler than the internal die.
This diode, at least on AMD CPU's, is not readable by external software, at least not as far as I am aware of. What is more typically displayed is the temperature read by a thermistor in the center of the processor socket on the motherboard. So if Motherboard Monitor says your CPU is 60C, the die may actually be over 70C.
You report room temps of 20C (wow, you like it cold. I prefer about 24C in the summer, 28C in the winter), and case temps of about 28C. That's not bad. Room temp here is 24C; case temp reported as 29C, and 46C for the CPU. That CPU is an Athlon XP 2100@2.1GHz, cooled with an Alpha 8045 heatsink, which is fairly large.
What cooling do you have for your CPU's?