India secured their place in the semi-finals of the Cricket World Cup with a defeat over in-form neighbourhood rivals Bangladesh by 28 runs with two overs to spare.
Returning to Edgbaston, the scene of their dispiriting loss to England, the team bounced back like champions against a talented Tigers outfit.
They posted 314-9 with the bat led by a match-winning 92-ball 104-run knock by Rohit Sharma, who was criminally dropped early in his innings.
Significant contributions also came from opener KL Rahul with 77 and latecomer Rishabh Pant with 48.
Bangladesh, so often overlooked by their rivals and cricket media, made the Indians sweat as they ran them close with impressive half-centuries by Shakib Al Hasan and Mohammed Saifuddin.
But eventually the Indians squeezed out the victory in the latter overs, bowling out Bangladesh for 286 with twelve balls remaining.
Looking to rebound on the same Edgbaston pitch on which they struggled miserably against India, Virat Kohli won the toss and elected to bat.
Captain Mashrafe Mortaza was hit for six by Rohit Sharma in his first over, which went for 10 runs. So he perhaps wisely decided to immediately take himself out of the attack.
He gave the new ball to Mohammed Saifuddin and Mustafizur Rahman who initially bowled with a tight line and length, and with a variety of deliveries which included full and fast balls, slower cutters and swinging deliveries.
In the field however, Bangladesh were sloppy. A game-changing moment was to come early on as Rohit Sharma was dropped in the deep early in his innings.
Sharma punished Bangladesh the following over for that error with a glorious inside out six over deep cover. And then a thick edge off an attempted drive for four off the next over.
KL Rahul who began tentatively started to find his groove with a two consecutive fours in the eighth over – a leg glance followed by a fantastic cover drive.
Sharma brought up India’s fifty with a fabulous cover drive of his own in the ninth over. He followed that up with another boundary in an over which they scored 12 off.
India scored another two boundaries in the tenth over to finish the opening powerplay, 69-0, their biggest score at the World Cup so far after 10 overs.
Shakib Al Hasan aims to wrest back control for the Tigers with a superb first over. The World’s best all-rounder bowled with tremendous skill and control in the middle overs to restrict India’s runs as they aimed to accelerate.
Nevertheless it was a Sharma slog off Shakib for six which brought up his fifty from 45 balls. KL Rahul was hitting sixes of his own as he smashed Mashrafe over long-on.
As Shakib was economical holding down one end, it was the other which India scored their runs from. Their opening pair brought up their 100-partnership in the 18th over, and the next over Rahul raised his bat for his fifty.
Sharma, now timing the ball with fluency, was hitting sixes and fours, and it was an elegant push with a straight bat for six back over the head of Mustafizur which brought up India’s 150 in the 24th over.
Five overs later, Sharma was celebrating his century, which he racked up in 90 balls. It was a vintage innings from the Indian opener who is now one of the best batsmen in one-day cricket. It was cruel for Bangladesh, but they only had themselves to blame after dropping him early.
However, as he did against England, he got himself out soon after reaching his ton, with a poor shot caught at cover in the 30th over.
Rubel Hossain got another wicket for the Tigers soon after. He had been expensive at the start, but he was more successful thereafter as he changed his tactics with slower deliveries and more variations.
Rahul departed for 77 runs off 92 balls when he tried to cut a Rubel delivery but a thick edge was caught behind by Mushfiqur.
Rishabh Pant entered the arena with his exciting if unconventional style. It was his six that brought up India’s 200 in the 34th over.
Both he and Virat Kohli had made good starts, ticking along at around a run-a-ball. But on this occasion it was not to be for the Indian skipper, as for the first time at this World Cup, he failed to score a half-century.
Kohli’s pull was caught well by Rubel Hossain who swiftly moved laterally from deep square leg to dismiss Kohli for 26 off 27, and earning the Fiz a well-deserved wicket.
The Fiz claimed his second scalp, the hard-hitting Hardik Pandya for a duck on his second ball, in the 39th over with a wicket maiden.
After an Indian dominance in the first 30 overs, Bangladesh fought back with three wickets in overs 31-40. India continued to accumulate at over 6 runs an over in the final 10 overs.
But some good bowling at the death from Bangladeshis restricted the finishing flurry that we have come to expect from the Indians, especially when they play for their IPL franchises. And Bangladesh also fought back with wickets to stop any partnerships developing.
Pant departed two runs short of his half-century when his mis-hit off Shakib was caught out in the deep on the second occasion by Mossadek Hossain.
Mossadek took another catch to dismiss Dinesh Karthik who was far too early through his shot against a slower ball bouncer from Mustafizur.
India brought up their 300 in the 48th over. In the final over, Mustafizur took two more wickets, of Dhoni and Shami, for only three runs, to finish with a five-wicket haul.
The third wicket of the final over came from a Bhuvneshwar Kumar run out as India posted a total of 314-9.
The second innings began with a good contest between the Indian strike bowlers and the Bangladeshi openers.
Bhuvneshwar Kumar opened his account with a testing first over which only went for one run. But Tamim Iqbal exploded with three fours over the next two overs.
The Bumrah bowled a maiden and Bumrah extended that stretch of dots to 10 balls to pile on the pressure.
Nevertheless the openers, and Soumya in particular who had found scoring difficult early, patiently dug in.
It was Mohammed Shami, brought on as a change of bowling, who made the breakthrough. On a slow used pitch on which the ball was not coming onto the bat easily, Tamim played into his own stumps.
Shortly after, Shami thought that he had trapped Tamim’s opening partner Soumya lbw. The review however showed that he had edged the ball before it hit the pad.
After a difficult beginning to his innings, Soumya looked like he had ridden over the earlier hurdles and was starting to find some rhythm.
However, just as he was looking good, he hit the ball straight to Kohli in the field, to depart for 33 runs off 38 balls.
It was the first wicket for Pandya who demonstrated that he had learned from his mistakes in the previous match against England on the same pitch, and bowled with much more guile and intelligence.
The trusted partnership of Shakib Al Hasan and Mushfiqur Rahim began a rebuild of the innings for the Tigers. The pair saw their team past the 100-mark in the 20th over.
Bangladesh were accumulating the runs to the worry of Virat and company. Shakib looked in excellent touch with his trademark exquisite strokeplay.
As the pair were nearing their 50-partnership however, Mushfiqur swept Chahal straight to an expertly placed fielder at mid-wicket.
Like Tamim and Soumya, Mushfiqur looked in good touch and made a start. But if Bangladesh were going to win, they needed him to go onto make a big score.
Shakib however, did go onto to make a half-century. He has had an outstanding tournament with consistent performances with both the ball and the bat.
To put into context how good his batting is, his ODI average of 58 is the same as Rohit Sharma.
Bangladesh had no need to panic as they still had depth in their batting order.
The pitch lacked pace and after having learned their lesson from the England match, the Indian bowlers adapted accordingly.
As a result, a natural strokeplayer like Litton Das struggled to score boundaries. His solitary shot beyond the rope was a six, as he ran the rest.
In what was becoming a running them in the Bangladesh innings, he made a start but he too fell in his 20s.
Hardik Pandya, who was really shining with the ball, bowled a peach of a short ball, which Das spliced into the air and into the hands of Dinesh Karthik at short mid wicket.
Mossadek Hossain, who has contributed commendably with the ball, did not bat as well as he usually does on this occasion.
On his seventh delivery, he fell to a brilliant slower ball from Bumrah which played onto his own stumps as he departed for a meagre three.
As long as Bangladesh had their star man in at the crease, you felt that the Tigers had a chance to win. However, India and Pandya in particular now had their bowling strategy in point.
Shakib was cramped by an excellent Pandya slower ball, which was far too straight to be able to get away. The star all-rounder was through his shot earlier than he would have liked and he dollied it up to the fielder at short extra cover.
But if the game was supposed to be over now that most of Bangladesh’s impressive batting order were now sitting back in the sheds, nobody told Sabbir Rahman and Mohammed Saifuddin.
Never mind the conditions and the slow pace, these two adapted quickly to the conditions and showed that they had the mental fortitude for the occasion.
The seven-eight pairing not only piled on the runs but also accelerated the run rate, as they propelled their team towards 250 with a partnership of 61.
Sabbir’s run-a-ball 36 was brought to an end by another Jasprit Bumrah slower ball, which the batsman did not pick and hit the leg stump.
Saifuddin however continued to play his shots as he made an impressive unbeaten 51 from 38 balls, which included nine fours.
Mashrafe Mortaza hit an five-ball knock for eight, including a six. It came to a close when he swing at a Bhuvneshwar slower ball outside off stump, which flew off the edge of Mortaza’s bat and was caught by a diving catch by Dhoni.
Bumrah dismissed both Rubel and Mustafizur with lethal yorkers on consecutive balls at the end of the 48th over to bowl Bangladesh all out for 286.
Bangladesh have been produced some excellent performances in this tournament and they have arguably played much better than their results suggest.
Their World Cup might have been very different their close match against New Zealand had finished differently or if their match against Sri Lanka had not been rained off.
Even in today’s match against India, they were not far off from taking the victory. If one of those top order batsman converted their score into a fifty, or Shakib made a century, it could have made the difference. Or maybe if Tamim had held onto that catch to dismiss Rohit Sharma in the 5th over.
They now cannot mathematically make the semi-finals. But they can spoil the party for Pakistan in their final World Cup match, against a team who they have beaten four times in their last four encounters.
What a difference a couple of days make? The post-mortem was out in some quarters after India’s loss to England. However, today India demonstrated that they learned their lessons from that match and made the necessary adjustments.
With Rahul producing a solid performance at the top alongside the impressive Rohit Sharma, and Pant might have been what India were missing in the middle order.
Hardik Pandya, the weakest of the five Indian bowlers, made the correct adjustments to his bowling to be the star performer with the ball for the India today.
In their last remaining group match, India would still like to be victorious against the Sri Lankans to carry the momentum into the semi-finals.