Skipper Rohit Sharma hit 89 off 61 balls while Washington Sundar excelled with the ball as India beat Bangladesh by 17 runs on Wednesday to become the first team to reach the final of the Nidahas Trophy.
Sundar struck once in each of his first three overs to derail the Bangladesh side early in their chase of 177 and although Mushfiqur Rahim tried to defy the odds, he did not get much help from his team-mates.
The debacle started when opener Liton Das and Soumya Sarkar fell cheaply to Sundar, but Tamim Iqbal did make a promising start. He misjudged a delivery from the bowler to depart on 27, and the Tigers found themselves three wickets down on 40.
Mushfiq then tried to mastermind a comeback, slamming 72 off 55 thanks to eight fours and a six, but his unbeaten knock went in vain.
Sabbir Rahman added 27 after the fall of Mahmudullah (11) and these two wickets all but sealed the fate of the game.
In the end, the Tigers could only manage 159 for 6.
Mohammed Siraj, Shardul Thakur and Yuzvendra Chahal bagged one wicket apiece to help Sundar contain the Tigers.
Put into bat first, opener Rohit's fifty had led the Indians to 176 for 3.
The Indian captain slammed five fours and five sixes in his innings, but he might have felt dejected as the overs ran out, depriving him of a chance to hit his third T20 international ton.
Rohit, who was later named the 'Man of the Match' and Shikhar Dhawan made 70 in the first wicket to give the Indians an ideal start. Paceman Rubel Hossain bowled the latter to break the stand, but Rohit then added another 102 in the third-wicket partnership with Suresh Raina.
The impressive Rubel removed Raina in the first ball of the innings' last over, which saw only four runs
Raina hit 47 off 30 balls, with five fours and two sixes.
Bangladesh will now face hosts Sri Lanka in the last game of the group stage, with the winner joining India in the final.