Left-arm spinner Ravindra Jadeja took four wickets to help India bundle out the West Indies for 104 in just 31.5 overs. Pacers Khaleel Ahmed and Jasprit Bumrah chipped in with two wickets each.
The home team took just 14.5 overs to reach the paltry target, courtesy an unbeaten 99-run stand between Rohit Sharma (62 off 54) and captain Virat Kohli (33 off 29), following another low score from Shikhar Dhawan.
It was a complete surrender from the West Indies, who let themselves down after competing hard in the first three ODIs. The previous game at Mumbai too was dominated by the hosts before they romped to a 3-1 series win here.
India last a lost a series at home in 2015, when they went down 2-3 against South Africa.
The hosts wasted in no time completing the 105-run target after the bowlers laid the foundation of a massive victory.
Rohit continued his fine form, notching up a half-century, in the process going past the 1,000-run mark for the calendar year 2018 and also hitting his 200th six in ODIs.
The India vice-captain had a lucky escape when he was caught behind by Shai Hope off Oshane Thomas' bowling on 18. He made most of that reprieve as he hit five boundaries and struck five imperious sixes. Kohli too was solid at the other end and his innings comprised six fours.
Dhawan's soft dismissal would probably be one of the lows for India as he chopped on a delivery from Thomas, who worked up good pace but was inconsistent with his line and length.
Earlier, the West Indies were in trouble right from the start after skipper Jason Holder chose to bat. Pacer Bhuvneshwar Kumar had Kieran Powell caught behind by M S Dhoni for a duck off the fourth ball, giving India their first wicket.
Shai Hope, who has been one of the best West Indies batsmen on tour alongside Shimron Hetmyer, was castled by Bumrah off a beauty in the second over to leave the team at 2 for 2.
The experienced Marlon Samuels, from whom a lot was expected, led a brief revival, hitting some crisp boundaries and the only six of the innings.
The Indian domination could be gauged from the fact that the first boundary came in the sixth over when Rovman Powell lofted one from Bumrah over the infield.
Samuels' resistance ended in the 12th over when he fell to a soft dismissal of Jadeja for 24, spooning a catch to skipper Virat Kohli.
As has often been the case in the series, Holder showed patience and skill to resist the rampant Indian bowlers but his dismissal hastened the end.
The lanky Holder was taken by Kedar Jadhav, running in from the deep when he tried to go ariel against Khaleel Ahmed. He was the top-scorer with 25.
The spinners took over and polished off the tail.