Herath was ably supported by off-spinner Sachitra Senanayake, who grabbed 2-3 as New Zealand was bowled out for its lowest T20 total of 60 in 15.3 overs after Sri Lanka was all out for 119 in 19.2 overs.
Kane Williamson was the only New Zealand batsman to reach double digits, scoring 42.
Earlier, New Zealand's Trent Boult and Jimmy Neesham claimed three wickets apiece to bowl Sri Lanka out for a moderate total.
Mahela Jayawardene made 25 while Lahiru Thirimanne scored 20.