South Africa 170 for 6 (Duminy 86*, Amla 41, Anderson 2-28, Southee 2-46) beat New Zealand 168 for 8 (Taylor 62, Williamson 51, Steyn 4-17) by 2 runs
Scorecard and ball-by-ball details

No team had successfully chased 170-plus against South Africa and Dale Steyn single-handedly ensured it stayed that way. The pace spearhead led the defence of 29 off the last three overs and seven off the final one to keep South Africa in the hunt for a semi-final spot.

After Steyn conceded just five runs in his first two overs, the third and 14th of the innings, Faf du Plessis held him back for the final squeeze and it proved a master move. With 18 balls of New Zealand's innings left, Steyn stepped up and exorcised the ghosts of Dhaka 2011 by putting the choke on new Zealand.

Corey Anderson scored six runs off the first two balls but could have been out off the second - a top-edge that Quinton de Kock got his fingers to. Anderson tried to hit the third delivery over long-on but did not have enough power behind it and found the fielder. Steyn sniffed an opening and went back to his default ball for the next two. They were short, curled away and beat Ross Taylor as he fished outside the off stump. Taylor got bat on ball to end the over with a couple but New Zealand still needed 21 runs.

Morne Morkel was having that kind of day. He could easily have conceded all 21, having gone for 36 in his first two overs, and he almost did. His lengths let him down as he bowled an over laced with full tosses that cost 14 runs. Ross Taylor had his way and New Zealand entered the final over needing only seven.

Steyn started with a full ball. Luke Ronchi tried to play a cross-batted shot through the off side but got an edge instead. De Kock dived to his right and held on. New Zealand still needed seven but Steyn had planted doubt in their minds. He followed up with two fireballs at 143 and 148 kph and beat Nathan McCullum with pace. McCullum caught up by the third and hit it over extra cover for four. New Zealand only need three.

Shortish and wide, like the next ball was, should have given it to them but McCullum hit it with the bottom of his bat. The shot was miscued and du Plessis took the catch to leave New Zealand needing three with just a ball remaining.

Taylor was on strike. The field on the leg side was mostly up, plugging the gap there with boundary-riders on the off-side. Steyn pitched it up, Taylor only managed a push back to him but ran anyway. Steyn ran faster. Taylor was run out.

It didn't have to be that tense for New Zealand. They had gotten off to a solid start in pursuit of their target and stayed mostly on track throughout their innings. Martin Guptill and Kane Williamson put on 57 for the first wicket and scored most of those runs in the powerplay overs.

Williamson anchored the first half of the innings after Guptill and Brendon McCullum were dismissed in the space of two overs, and with Ross Taylor at the other end, New Zealand threatened to take the game away. Taylor tore into Morne Morkel, smacking him for three sixes in succession - over long-on, a top-edge over the wicketkeeper's head and the last over square leg. Just before that, Williamson had brought up his maiden T20 fifty, off 31 balls. Incidentally, JP Duminy's half-century for South Africa had come up in the same number of deliveries.

Williamson became Steyn's first victim when he tried to hit him over deep midwicket but found a diving AB de Villiers, but it was only when Imran Tahir removed Colin Munro that South Africa started to claw their way back. They ended the New Zealand innings as emphatically as they ended their own, with fireworks in the final passages.

South Africa scored 70 runs off the final five overs of their innings after meandering their way to 100 off the first 15. Hashim Amla stood firm for them after Quinton de Kock, Faf du Plessis and AB de Villiers were dismissed in the powerplay. Amla and Duminy combined for a 55-run fourth wicket stand to set South Africa up but it was up to Duminy to blast them to a good score.

He showed glimpses of aggression before Amla was dismissed - notably the ramp shot off Corey Anderson that went over Luke Ronchi's head - but it was only after Amla was caught by Anderson after hitting the ball to the non-striker's end and watching it loop off Duminy's bat to offer Anderson a return catch - that Duminy opened up. He had the finishers with him but neither David Miller nor Albie Morkel forced the run rate up like Duminy did.

The full range was on display - a reverse-sweep of Williamson, a pull, a drive and a scoop off Tim Southee in the same over, a crunch through the covers, a sweep and a launch over long-on off Kyle Mills in the same over, and a drive that almost took the umpire Aleem Dar out. Duminy was the architect of South Africa's two biggest overs, the 17th and 19th, which went for 17 runs each, and the man who gave them a total Steyn could defend.