Noakes, who replaced regular flyhalf Mike Delany midway through the second half, scored a try and kicked three conversions and three penalties, including an angled, long-distance match-winning effort in the 79th minute.
The Highlanders rebounded from a 9-30 deficit and the yellow-carding of hooker Andrew Hore and flank James Haskell to record their seventh win in nine matches and stay five points behind leaders and New Zealand Conference pace-setters, the Waikato Chiefs.
The Cheetahs seemed to have the match sown up when flyhalf Johan Goosen, rapidly becoming one of the legends of Free State rugby, scored a jinking try from 70 metres out to stretch their lead to 28-9. But the 19-year-old injured his shoulder in the process of scoring the try and had to leave the field, the Cheetahs suffering a spectacular meltdown thereafter.
The Highlanders began throwing the ball around and attacked like a Sevens side and were rewarded with three tries in six minutes, two by replacement scrumhalf Jimmy Cowan, as they ripped the stunned Cheetahs apart.
The home side had used strong driving play and the boot of Goosen to put themselves in a powerful position through tries by prop Coenie Oosthuizen and lock Andries Ferreira, as well as Goosen’s fine solo effort early in the second half.
Goosen was replaced by Sias Ebersohn, who missed three penalties, including an easy effort from in line with the right upright that could have made his team the victors.
Cheetahs – Tries: Coenie Oosthuizen, Andries Ferreira, Johan Goosen. Conversions: Goosen (2), Sias Ebersohn. Penalties: Goosen (3), Ebersohn.
Highlanders – Tries: Chris Noakes, Jimmy Cowan (2). Conversions: Noakes (3). Penalties: Mike Delany (3), Noakes (2).