Neesham's innings of 107 and a 201-run sixth-wicket partnership with B.J. Watling (89) lifted the Black Caps to a total of 508 for seven declared. (Agencies)
Left to negotiate a tricky nine overs before the close of play, West Indies reached 19 without loss with Chris Gayle, in his 100th Test match on his home ground, to resume on the third morning with Kieran Powell.
Powell has already enjoyed a moment of good fortune, being put down by Peter Fulton at second slip in the third over of the innings off Tim Southee.
Despite an encouraging effort in the morning session when three wickets fell for 20 runs to have New Zealand at 279 for five from their overnight position of 240 for two, the West Indies bowlers again laboured on a benign pitch throughout the afternoon.
Neesham, the 23-year-old left-hander from Auckland who launched his Test career with a century in a drawn match against India in Wellington last February, mixed watchful defiance with periods of bold aggression.
He smashed off-spinner Shane Shillingford for two sixes in the same over and had 11 fours in an innings that occupied three-and-a-half hours before he fell to a catch at the wicket off Sulieman Benn.
"I'm very pleased obviously, although my first Test ended in a draw and this pitch is pretty flat, so I'm more concerned about getting my first Test win," he said.
"There's a bit of turn and bounce so it'll be interesting to see if we can put them under a bit of pressure."
For Benn, who together with fellow returning spinner Shane Shillingford took three expensive wickets apiece, the experience over the first two days of the match reminded him of the tough nature of Test cricket.
"You get shown up at this level. It was a rude awakening, a re-awakening," he said after completing 52 overs.
Neesham's century followed the first-day hundred of Kane Williamson, and New Zealand might have had a third century-maker except that the immediacy of the declaration in the final hour of the day forced Watling to be a bit more adventurous, the pugnacious wicketkeeper-batsman falling to a catch at deep midwicket off Shillingford.
The second session of play had contrasted sharply with the first, 129 runs being scored off 35 overs to redress the balance from the morning stumbles.
Williamson added just another eight runs before misjudging the line of a straighter delivery from Benn to have his off-stump knocked back on 113.
Former captain Ross Taylor, the other overnight batsman, got to 55 before chipping a catch to Kirk Edwards at midwicket off Shillingford.
In the next over Benn grazed the edge of Brendon McCullum's bat and Gayle took the lobbed catch via wicketkeeper Denesh Ramdin's shoulder to send the New Zealand captain back for just seven.
Neesham's innings of 107 and a 201-run sixth-wicket partnership with B.J. Watling (89) lifted the Black Caps to a total of 508 for seven declared.