McCullum (81) and How (76) put on 154 for the second wicket as New Zealand cruised in with 11.2 overs to spare to level the three-match series. The deciding match will be in Cape Town Sunday.
New Zealand's win followed heavy defeats in two Tests and losses in a Twenty20 international and the first one-day international.
"It was a pretty good performance," said New Zealand captain Daniel Vettori. "I don't think there was any area where we didn't go a very good job. It was a pretty good wicket and South Africa will be disappointed with the total they put up. It was a testament to the way we bowled."
Vettori said the win would give his team confidence going into the decider. "We haven't won too many games in South Africa but it doesn't mean much unless we go on to win the series."
The Black Caps dominated most of the match, reducing South Africa to 66 for five after South African captain Graeme Smith won the toss and decided to bat.
All-rounder Shaun Pollock and wicketkeeper Mark Boucher added 89 for the sixth wicket to enable South Africa to make 209 for nine.
Boucher, speaking on behalf of South Africa after Smith left the field with a hand injury suffered while fielding, said his team had no excuses: "We were behind the eight ball from the first over today.
"We haven't really hit our straps in the one-day format as yet. There are a couple of upset boys in the change room at the moment and we've got to raise our game for Cape Town."
New Zealand lost Lou Vincent to a run-out with only nine runs scored but McCullum and How made the target look easy. They shared the man of the match award.
McCullum was in particularly good form as he hammered 81 off 85 balls with nine fours and a six before being run out by a good throw from deep cover by substitute fielder Dale Steyn while attempting a second run.
McCullum was aggressive from the start of his innings and How was the ideal foil, playing solidly but picking off loose deliveries to make his runs off 106 balls with 11 boundaries. It was the second successive impressive knock by How, who made a career-best 90 in the first match in Durban.
South Africa's bowling and fielding was unimpressive, although they were hampered by dew, which made conditions difficult for the fielding team.
Opening bowler Kyle Mills struck the first blows for New Zealand on a slow pitch, which offered some early seam movement, dismissing opening batsmen Herschelle Gibbs and Smith without scoring.
Mills followed up his five for 25 in Durban by taking three for 43 while fellow new ball bowler Mark Gillespie took three for 55.
New Zealand produced their best bowling and fielding performance of a disappointing tour before Pollock (52) and Boucher (48) rebuilt the innings, starting their stand slowly but increasing the scoring rate after they played themselves in.
Tailender Andre Nel, who scored nine runs off the last three balls of the match as South Africa squeezed a two-wicket win in Durban, gave the innings late impetus when he hit a six and two fours off the 49th over, bowled by Mills.
Then he edged a four and slogged a six off the last two balls of the innings from Gillespie to finish with 30 not out off 13 balls.
But Nel quickly gave back most of the runs he scored when he conceded 28 off three overs with the new ball, including a straight six by McCullum. He went for another 27 in a second spell of three overs.
McCullum was dropped on 29 when a pad-bat chance off Pollock looped to Gibbs at cover.