The Indian team beat Bangladesh by 17 runs in the last league stage match at the R. Premadasa International Cricket Stadium in Colombo on Wednesday to seal their spot in the finals of the Nidahas Twenty20 tri-series.
Being put into bat first, India scored 176/3 in their 20 overs, powered by a flamboyant knock by stand-in skipper Rohit Sharma.
Sharma made 89 from 61 balls, before being run out by Rubel Hossain.
He slammed five sixes in his knock of 89 and became the leading batsman in T20I cricket for India, to hit most sixes.
Sharma who now has 75 sixes in T20 internationals to his name, overtook Yuvraj Singh (74).
Bangladesh, in response, made 159/6 in their 20 overs.
Mushfiqur Rahim made 72 from 55 balls but got little support from the other end.
Washington Sundar took three wickets for India.
Mohammed Siraj, Yuzvendra Chahal, and Shardul Thakur scalped one wicket each.
The last league game of the tri-series between Sri Lanka and Bangladesh on March 16 will now be a knockout as it will decide India's opponent in the final.
The final will be played on March 18.