New Zealand will face India in the final of the Champions Trophy after defeating South Africa by 50 runs in the second semi-final on Wednesday.
Electing to bat, New Zealand racked up a tournament record 362-6, powered by centuries from Rachin Ravindra (108) and Kane Williamson (102) at the Gaddafi Stadium in Lahore.
Daryl Mitchell (49) and Glenn Phillips (49 not out) also made vital contributions.
In reply, South Africa could only manage 312-9, with David Miller (100 off 67) completing his century on the final ball of the match, while Rassie van der Dussen (69) and Temba Bavuma (56) struck half-centuries.
New Zealand skipper Mitchell Santner used seven bowlers but led by example with a match-turning 3-43.
The final will be played on Sunday at the Dubai International Cricket Stadium.

Rohit and Kohli bid likely farewell to Australia as winners
Al Wahda defeats Al Dhafra, heads to quarter-finals of UAE President's Cup
Bencic battles past Kenin to set up Noskova final in Tokyo
Lionel Messi tallies twice as Inter Miami take opener vs. Nashville
