Virat Kohli and Rishabh Pant hit attacking half-centuries to set up India's eight-run series-clinching victory over West Indies in the second Twenty20 international on Friday.
Chasing 187 for victory, West Indies finished on 178 for three despite a threatening century stand between Nicholas Pooran (62) and Rovman Powell (unbeaten 68 off 36 balls) in Kolkata.
India, who whitewashed the West Indies 3-0 in the preceding one-day matches, took an unassailable 2-0 lead in the three-match T20 series.
Pooran, a left-handed wicketkeeper-batsman, smashed five fours and three sixes in his 41-ball knock before falling to pace bowler Bhuvneshwar Kumar in a four-run 19th over.
With 25 needed off the final over, Powell attempted a final onslaught with two sixes off Harshal Patel but the bowler held his nerve.
Off-spinner Roston Chase took three wickets after West Indies elected to bowl in skipper Kieron Pollard's 100th T20I but Pant's unbeaten 52 steered India to 186 for five.
The Indian batting wobbled after Kohli's 52 but Pant, who hit an unbeaten 52 off 28 balls, and Venkatesh Iyer put on 76 runs for the fifth wicket to boost the total.
Pace bowler Sheldon Cottrell got Ishan Kishan caught behind for two after the left-handed opener's struggle at the crease in a 10-ball stay.
Skipper Rohit Sharma and Kohli rebuilt the innings in their partnership of 49 with the former captain coming in all guns blazing with a string of boundaries.
Chase sent back Rohit for 19 and then caught and bowled Suryakumar Yadav for eight.
Kohli, who had scores of eight, 18 and nought in India's 3-0 ODI sweep of West Indies and then 17 in the opening T20 win, overcame a brief lull to smash his 30th T20I fifty.
He raised his 50 with a six off Chase, who finished with figures of 3-25, but was bowled two balls later after his 41-ball knock.
The left-handed batting pair of Pant and Iyer, who made 33 off 18 balls before being bowled by Romario Shepherd, then hit back to take the attack to the opposition.
The West Indies started cautiously in their chase and lost Kyle Mayers for nine, caught and bowled off leg-spinner Yuzvendra Chahal.
Pooran took on the bowlers with a few boundaries but soon opener Brandon King fell to Ravi Bishnoi's leg spin.
Pooran, who got a reprieve on 21 when Bishnoi dropped him at deep mid-wicket and went on to raise his second successive fifty with a six, put on 100 with Powell.
The final match is on Sunday at the same venue.
India v West Indies second T20 scoreboard
R. Sharma c King b Chase 19
I. Kishan c Mayers b Cottrell 2
V. Kohli b Chase 52
S. Yadav c and b Chase 8
R. Pant not out 52
V. Iyer b Shepherd 33
H. Patel not out 1
Extras (b5, lb3, nb2, w9) 19
Total (5 wickets, 20 overs) 186
Did not bat: D. Chahar, R. Bishnoi, B. Kumar, Y. Chahal
Fall of wickets: 1-10 (Kishan), 2-59 (Rohit), 3-72 (Yadav), 4-106 (Kohli), 5-182 (Iyer)
Bowling: Hosein 4-0-30-0 (nb2), Cottrell 3-1-20-1 (w1), Holder 4-0-45-0 (w3), Shepherd 3-0-34-1 (w2), Chase 4-0-25-3 (w1), Smith 1-0-10-0 (w2), Pollard 1-0-14-0
West Indies (target 187)
B. King c Yadav b Bishnoi 22
K. Mayers c and b Chahal 9
N. Pooran c Bishnoi b Kumar 62
R. Powell not out 68
K. Pollard not out 3
Extras (lb2, w12) 14
Total (3 wickets, 20 overs) 178
Did not bat: J. Holder, O. Smith, R. Chase, A. Hosein, R. Shepherd, S. Cottrell
Fall of wickets: 1-34 (Mayers), 2-59 (King), 3-159 (Pooran)
Bowling: Kumar 4-0-29-1 (w6), Chahar 4-0-40-0, Chahal 4-0-31-1 (w2), Patel 4-0-46-0 (w1), Bishnoi 4-0-30-1 (w3)
Toss: West Indies