First thing to do is find another mechanic. I'd
suspect a blown head gasket since it's overheating
at idle and while driving. The coolant should be
tested for exhaust gasses. If exhaust gasses are
present in the coolant, the head gasket is definitely
blown. Other possibilities are a bad thermostat, and
a blockage in front of the radiator. Since you have
good heat the coolant is circulating. That rules out
the water pump, air in the cooling system, and a
blocked cooling system. There's a bypass on the
thermostat to allow coolant to circulate just through
the heater core when the engine is cold and the
thermostat is closed. But if the thermostat is stuck
closed you will have plenty of heat but the engine
will overheat because the coolant is not circulating
through the engine! Hope that helps! Jim
8 people found this helpful.