Lasith Malinga claimed his 99th international Twenty20 wicket to move top of the all-time list in the format but New Zealand edged to a five-wicket win over Sri Lanka in Pallekele on Sunday.

New Zealand, who lost the toss and were asked to field, rested Kane Williamson and were without Lockie Ferguson due to a fractured thumb, although the Black Caps said the fast bowler should be fit to face England in a five-match T20 series starting on November 1.

Sri Lanka were 50-1 at the end of an explosive powerplay with opener Kusal Mendis going on to make 79 off 53 balls, while Isuru Udana blasted Seth Rance for 15 off the last three balls of the innings to set a daunting target of 175.

Malinga got the hosts off to a flyer in the reply, bowling Colin Munro for a first-ball duck.

The veteran paceman took the T20 record when removed Colin de Grandhomme, who made a buccaneering 44 off 28 that kept New Zealand in the game before missing a full, straight ball.

Erratic work in the field continued to give the tourists hope and they were ahead on the Duckworth-Lewis-Stern method when rain came immediately after debutant Wanindu Hasaranga snared Ross Taylor (48 off 29), the batsman unsuccessfully reviewing the lbw verdict having earlier been dropped.

When play resumed New Zealand needed 18 off the last two overs and Malinga returned to the attack.

But a wild wide cost five runs and Daryl Mitchell lifted a full ball over the ropes, before hitting the winning runs off Udana to seal a thrilling victory with three balls to spare.

The three-match series resumes in Kandy on Tuesday.