Guptill, dropped on four by Marlon Samuels, finished on 237 not out, the highest individual score in World Cup history and the second largest one-day international innings of all time, as he led New Zealand to 393 for six in their 50 overs at Wellington Stadium.
Boult backed up the opening batsman’s feat by taking four for 44 to move to the top of the tournament wicket-takers list with 19 as the West Indies folded for 250 in the 31st over.
The kept up with the required run rate, reaching 200 in the 25th over, but by then they were already seven wickets down.
Chris Gayle, shrugging off the effects of a long-standing back injury, cracked 61 off 33 balls, including eight of the 31 sixes in the match as batsmen on both sides plundered the short boundaries.
New Zealand will now play South Africa in the first semi-final at Auckland’s Eden Park on Tuesday, with fellow co-hosts Australia facing defending champions India in Sydney two days later.
“Sublime, just sublime,” said New Zealand captain Brendon McCullum of Guptill’s stunning display of orthodox clean-hitting. “I will never forget it. Everybody here is the same.”
Meanwhile, a modest Guptill said: “After I got a hundred, I thought I should hit some boundaries.
“We will let this one sink in tonight (Saturday night) and focus on the semi-finals tomorrow (Sunday)… We have work to do, so I can’t focus on it too much.”
West Indies captain Jason Holder added: “It was tough to defend. We were in the game until the 35th over.
“Guptill played brilliantly. We put him down early. A set batsman on that pitch is dangerous. Having said that, we didn’t bowl our yorkers well.”
New Zealand, favourites for Saturday’s match after emerging unbeaten from pool play, had a rocky start when regular batting hero McCullum, who won the toss, fell cheaply for 12.
But opening partner Guptill, coming into form late in the tournament, took up the challenge as he blasted his second successive century after scoring 105 against Bangladesh in New Zealand’s concluding pool match.
He chewed up the West Indies attack, hitting 24 fours and 11 sixes from 163 deliveries faced as he overtook the previous best World Cup score of 215 set by Gayle earlier in this tournament against Zimbabwe.
In all one-day internationals, Guptill’s unbeaten 237 is second only to Rohit Sharma’s 264 against Sri Lanka in Kolkata last year, and broke his own New Zealand record of 189 not out against England in Southampton in 2013.
New Zealand’s closing charge saw them score 153 runs in the final 10 overs to further deflate the West Indies.
Jerome Taylor, who had Guptill dropped in this first over, returned the best figures for the West Indies with three for 71, while Andre Russell took two for 96.
Boult was on the money in his first over when he bowled Johnson Charles for three with his second delivery.
He followed-up with the wickets of Lendl Simmons (12), Samuels (27) and Denesh Ramdin (nought) to have four for 18 after five overs.
Gayle was in a particularly ferocious mood, belting spinner Daniel Vettori out of the attack after one over which cost 21 runs.
But the 36-year-old Vettori broke the Gayle-Samuels partnership when he flung his 1.91 metre (6ft 3in) frame into the air to save a six and pull off a remarkable one-handed catch on the boundary.
Adam Milne, like Tim Southee and Boult, was also expensive but had the satisfaction of bowling Gayle.
Corey Anderson had Darren Sammy caught behind for 27, leaving the West Indies 166 for six, before Vettori and Southee stepped in to work their way through the stubborn tail.