Sri Lanka set New Zealand a testing victory target of 277 to win the match at Saxton Oval after being bowled out for 276 in 49.3 overs and the Black Caps reached the mark with 11 balls to spare for the loss of six wickets.
Sri Lanka's big three batsmen all made significant contributions to their total but the Sri Lankan’s did not get enough runs from the rest of their lineup on a good batting wicket, Reuters reported.
Mahela Jayawardene fell just six runs shy of a century and Kumar Sangakkara made a swift 76 after Tillikaratne Dilshan gave the Sri Lankans a solid platform with 44.
"After the start we got, I thought the lower order batted poorly," Sri Lanka captain Angelo Mathews said.
"I thought Dilshan, Sangakkara and Mahela batted beautifully. It was a very good wicket, didn't turn as much or slow up, but it was a good batting track."
Fast bowler Adam Milne was the pick of New Zealand's attack with 2-28 from seven overs, while opening bowler Tim Southee was expensive but finished with 3-59.
New Zealand lead the best-of-seven series 2-1 after they shared the first two games and the third match in Auckland on Saturday was rained out.