Rohit Sharma, right, celebrates after completing his century. He ended up scoring 123 not out ©Getty Images

India booked a place in the International Cricket Council Champions Trophy final against rivals Pakistan after thrashing Bangladesh by nine wickets in their semi-final encounter.

A century from Rohit Sharma and a knock of 96 from 78 balls from skipper Virat Kohli saw India reach their target at Edgbaston in Birmingham with 9.5 overs left.

Bangladesh had posted a score of 264-7 from their 50 overs after losing the toss and being put into bat.

At one stage, they were 154-2 with plenty of time remaining in the innings to post a very competitive score.

However, the fall of three quick wickets stifled their progression.

Opening batsman Tamim Iqbal was their top scorer with 70 while Mushfiqur Rahim hit 61, with the duo adding 123 runs for the third wicket.

India's captain Virat Kohli playing a shot during his innings of 96 ©Getty Images
India's captain Virat Kohli playing a shot during his innings of 96 ©Getty Images

Wickets were shared around the Indian bowlers with Bhuvneshwar Kumar, Jasprit Bumrah and Kedar Jadhav all picking up two apiece while spinner Ravindra Jadeja collected the other scalp.

India then got off to a flying start as their first wicket partnership put on 87 before Shikhar Dharwan was caught by Mosaddek Hossain off Mashrafe Mortaza for 46.

The onslaught continued though as Rohit and Kohli found the boundary regularly.

Rohit, who ended on 123 not out from 129 balls, hit 15 fours and a six while his captain scored 13 fours en route to victory.

The final will take place at The Oval in London on Sunday (June 18).

When Pakistan and India met in the competition's group stage, the latter nation won by 124 runs via the Duckworth-Lewis Method.