The All Blacks, who had humiliated South Africa 52-16 in Pretoria last month, were made to work far harder in a bruising encounter between the two fiercest rivals in international rugby.
New Zealand fly-half Carlos Spencer proved the difference between the sides, slotting four vital penalties while his South African opposite number Louis Koen had an off-day with the boot.
Koen missed two penalties as well as three drop-goal attempts as South Africa struggled to capitalise on an immense forward effort, with their back-row forwards led by skipper Corne Krige outstanding.
The Springboks had been written off as no-hopers going into the match but rediscovered their fabled forward power to put New Zealand under pressure in the close-quarters battle.
No.8 Juan Smith and the impressive openside Joe van Niekerk frequently breached the gain line, providing South Africa with forward momentum and denying New Zealand's skilful backs time and space.
But the match began ominously for South Africa as New Zealand scored after five minutes with a try that owed everything to the vision of inside centre Aaron Mauger.
Mauger's perfectly weighted grubber kick caught South Africa's defence on the turn, and flying Fijian winger Joe Rokocoko beat the cover to touch down for his 11th try in only six internationals.
Spencer converted but South Africa responded brilliantly after quarter of an hour with an unlikely solo effort from tight-head prop Richard Bands.
Bands broke clear from a ruck 40 metres out and barrelled down the touchline before battering aside Spencer's cover tackle to score in the corner.
Koen missed the conversion but was on target later in the half as he and Spencer traded two penalties each.
The dynamic effort by South Africa's van Niekerk and Smith was backed up by formidable displays from locks Victor Matfield and Geo Cronje, looking more than comfortable on his debut.
Crucially though South Africa were unable to get their noses in front, Koen missing an opportunity to give South Africa a psychologically useful 14-13 half-time lead when he fluffed a penalty just before the break
New Zealand started the second half vigorously, but were kept at bay by South Africa's forwards.
Spencer extended New Zealand's lead to 16-11 with his third penalty, and handed the All Blacks an eight-point cushion with his fourth going into the last 20 minutes.
Spencer almost conjured up a try for lock Ali Williams with a fabulous late break only for wing Stefan Terblanche to snuff out the move with a covering tackle.
Skipper Reuben Thorne paid tribute to the flawless display of Spencer, whose goalkicking had come under scrutiny earlier in the season after a defeat to England in June.
"He kicked really well. We've always believed in him and tonight just showed what he's capable of," said Thorne, adding he had not been surprised by a sharp improvement in South Africa's play.
"We expected them to come out fired up. They've had two disappointing losses and we knew they'd be really tough tonight and they were. Their defence was superb," said Thorne, who is now focused on wresting the Bledisloe Cup from Australian hands.
"We're looking forward to next week. Hopefully we can get the result we need," he said.
South Africa captain Krige was disappointed at the defeat - but admitted the performance would enable the Springboks to approach October's World Cup in a positive frame of mind.
"I can't be proud of the loss, but I'm pleased with the way the guys played," Krige said.
"We were in this Test match for the whole game - but we just never got an opportunity to finish them off," said Krige, who revealed the Springboks had targeted a vulnerability in the All Blacks near the breakdown.
"We had set out to attack them at the rucks," he said. "Our game plan was working we just couldn't finish them off. I'm not happy - I want to win a Test match in New Zealand."
Krige's side face England in Perth in the first phase of October's World Cup, a match which will see the loser almost certainly face New Zealand in the quarter-finals.
"Every match we've lost this season we have been able to take something positive out of and there's a lot we can be positive about after this game," Krige said. "We can build on this for the World Cup."
NEW ZEALAND 19 (Joe Rokocoko try; Carlos Spencer 4 penalties, conversion) SOUTH AFRICA 11 (Richard Band try; Louis Koen 2 penalties). Halftime: 13-11.