Grant Elliott and Corey Anderson picked the tempo up after Williamson and Ross Taylor were out in consecutive balls. Anderson and Luke Ronchi were then largely responsible for 102 runs being flayed off the last 10 overs.
Anderso flogged 75 off 46 balls, being out off the last ball of the innings; Ronchi was left on 29 off 19 balls.
The threat expected from seamer Lasith Malinga never materialized as he was hit for 84 in his 10 overs while Nuwan Kulasekara's eight overs cost 78.
Kumar Sangakkara looked likely in getting to 39 in 37 balls, before missing a Trent Boult full toss to be lbw.
From there the task was beyond captain Angelo Mathews, who made 46, but with little support.
Boult, Dan Vettori, with an impressive two for 34 off 10 overs, Adam Milne, Tim Southee and Corey Anderson all took two wickets as New Zealand kicked off their campaign in style.
They next meet Scotland in Dunedin on Tuesday while the Sri Lankans play Afghanistan, also in Dunedin, on February 22.