Holders India will be favourites against Bangladesh on Thursday but as Pakistan proved against England, there are no guarantees in the ICC Champions Trophy semi-finals.
Virat Kohli's side are looking to retain the trophy having defeated England in the final at Edgbaston four years ago and they return to the same venue aiming to get one over on their neighbours and set up a meeting with another familiar foe.
Few fancied Pakistan to overturn the hosts in Wednesday's first semi-final, but a convincing eight-wicket win confounded the doubters and gave Bangladesh added hope of a second upset in as many days.
The Tigers will be desperate to avoid a repeat of the warm-up clash between the two nations prior to the tournament, which saw India smash 324-7 before rolling out their opponents for a paltry 84.
After suffering defeat to England in their opener, Bangladesh were saved by the rain as Australia closed in on victory. Needing a win over New Zealand to stay alive in the competition, Bangladesh recovered superbly from 33-4 in their chase of 266 as centuries from Shakib Al Hasan and Mahmudullah dumped out the Black Caps.
India, meanwhile, celebrated resounding victories over Pakistan and South Africa, either side of a surprise loss to Sri Lanka. Kohli's side have a wealth of big-game experience, while Bangladesh have never before reached the last four of a global ICC event. Could that disparity prove a deciding factor?
Kohli took time in his media conference on Wednesday to hail Yuvraj Singh, who is set to make his 300th ODI appearance. The left-hander is rarely used as a bowler these days, but his powerful hitting in the middle order remains as destructive as ever.
Tamim Iqbal, Shakib and Mahmudullah have all shone with the bat for the Tigers, but Mosaddek Hossain could have another big role to play with the ball. Called into the side for the decisive game against New Zealand, the off-spinner took 3-13 from three overs to stem the Black Caps' momentum and ensure Bangladesh were chasing a manageable total.
Bangladesh: Tamim Iqbal, Soumya Sarkar, Sabbir Rahman, Mushfiqur Rahim, Shakib Al Hasan, Mahmudullah, Mosaddek Hossain, Taskin Ahmed, Mashrafe Mortaza (captain), Rubel Hossain, Mustafizur Rahman.
India: Rohit Sharma, Shikhar Dhawan, Virat Kohli (captain), Yuvraj Singh, MS Dhoni, Hardik Pandya, Kedar Jadhav, Ravindra Jadeja, Ravichandran Ashwin, Bhuvneshwar Kumar, Jasprit Bumrah.
LAST ODI MEETING:
With that warm-up debacle not officially counting as an ODI, we have to go back to June 2015 to find the last meeting between these two. Having already secured their maiden bilateral series win over India, Bangladesh were beaten in the dead-rubber of a three-match series. Shikhar Dhawan and MS Dhoni made half-centuries as India racked up 317-6 in Mirpur, before the hosts were dismissed for 240 to go down by 77 runs.
"As we've seen in the league stages, a lot of teams have surprised the opposition, and we're certainly not taking anything for granted." - Kohli insists India are not taking Bangladesh lightly.
"Obviously we have been disappointed, especially in India the T20 World Cup where we couldn't go through three balls, needed two runs, and our best two batsmen in the wicket. It happens sometimes in cricket, but we forget it." - Bangladesh skipper Mashrafe Mortaza is eager to move on from last year's World T20 meeting, when the Tigers failed to get two runs from the final three balls and were eliminated.
- Bangladesh have won two of their last three ODI matches against India ahead of this contest; this is the first encounter between them in the Champions Trophy, however.
- Bangladesh have progressed from the Champions Trophy group stage for the first time in their history; they took three points from their three group stage games (W1 L1 NR1).
- This is only the second time in India's last five appearances at the Champions Trophy that they've managed to progress beyond the group stage; they did go on to win it on that previous occasion though (2013).
- India have won their last four ODI matches in succession at Edgbaston whilst Bangladesh have lost both times they've played there in this format.
- Shikhar Dhawan has posted more runs than any other batsman across the 2013 and 2017 editions of the Champions Trophy (634); doing so at an average of 90.6.
- Virat Kohli is 88 away from reaching 8,000 ODI runs; AB de Villiers got to that milestone in a record 182 innings, Kohli's next knock will be his 175th.