Recently, my laptop started running hotter and hotter, to the point that it would shut itself down out of protection. Speedfan reported my core temperature (under load) above 100C (the temperature of boiling water)! It idled around 60 - 70C. I almost went out a bought a new laptop, assuming my processor or power supply or something must be breaking down.
Well, I'm glad I didn't, because I fixed it with one simple trick after some googling. All you need to do is break out your vacuum cleaner, and clear the dust from the laptop's cooling system.
On most laptops, that means two points: an intake vent, and an exhaust vent. The idea is that air is sucked into the laptop through the intake vent, passes over your hot components, and then blows out of the exhaust vent, cooling everything down in the process. This is all done with 1 or 2 fans, which can get very dusty over time.
It's that dust that causes the laptop to overheat. It chokes the fans and creates a blanket over your components.
So, just take your vacuum cleaner's hose attachment and go over both vents really well. The intake vent is probably on the bottom of the laptop, and the exhaust is probably on the side or back. On some laptops, to really get rid of all the dust, you might have to take the cover off and blow out the fans/vents with compressed air. I didn't have to with mine, though.
After doing this, my laptop idles around 52-54C, and under load it gets to around 60-65C. It's still a little hotter than I want it to be, but that's nothing compared to 100C!
So if you've got a dangerously overheating laptop (use Speedfan to check) then give this tip a try. If it doesn't work, it probably means you have a more serious-- and more expensive-- problem.