India scraped a last-ball, one-run win over Bangladesh while England had a narrow escape against Afghanistan Wednesday as two of the favourites incricket‘s World Twenty20 were nearly humiliated by rank outsiders.

After making a modest 146 in their innings, India were on the verge of suffering their first ever T20 defeat to Bangladesh in Bangalore.

But they took three wickets in the last three balls, with wicket-keeper Mahendra Singh Dhoni running out Mustafizur Rahman at the finale as Bangladesh fell one run short.

England meanwhile were reduced to 85 for seven by Afghanistan in New Delhi before a late rally by Moeen Ali and David Willey enabled them to post what was to prove a winning score of 142 against spirited opponents.

The results strengthened the prospects of both India and England reaching next week’s semi-finals in Mumbai and New Delhi. However they must win their final group games against Australia and Sri Lanka.

Bangladesh and Afghanistan have no chance of advancing further after losing their first three matches, with one game still to go.

Rollercoaster ride

Ravichandran Ashwin, man of the match for India after conceding just 20 runs in his four overs and taking two crucial wickets, said he was totally spent after going through such a “rollercoaster” of emotions.

“It was a big rollercoaster game, but I think for a team to go all the way in such a game is very very important,” he said after accepting his match award.

“We have never really got together and worried so much. I don’t have anything left, I’m drained after today’s game. I’ll just crash now.”

A crestfallen Bangladesh skipper Mashrafe Mortaza said the manner of the defeat had been “especially disappointing for us” but took some solace from the fact that the Tigers, the lowest-ranked team in the tournament, had run the favourites so close.

India Beat Bangladesh By 1 Run In World T20 2016

Opener Tamim Iqbal top-scored for Bangladesh with 35 off 32 balls, before he was stumped by the Indian skipper Dhoni.

There were also contributions from Shakib Al Hasan who made a quick-fire 22 while Soumya Sarkar chipped in with 21 as Bangladesh edged towards their target.

But Ashwin and his fellow spinner Ravindra Jadeja kept their cool and continued to take wickets.

At the start of the final over, Bangladesh needed 11 runs and after a single off the first ball, Mushfiqur Rahim smashed two consecutive fours.

But he was then caught at deep-wicket by Shikhar Dhawan while Mahmudullah followed him back to the dugout after the next ball before the final drama which saw Rahman just fail to make his crease.

India, with one loss and one win heading into Wednesday’s match, knew they couldn’t afford to lose if they were to keep their dream alive of becoming the first country to win the World T20 twice.

But their total of 146 seemed below par, thanks to some gritty bowling by Bangladesh.

Al-Amin Hossain took two wickets for Bangladesh off two balls, while newcomer Shuvagata Hom claimed the critical scalp of Virat Kohli for 24.

Dhawan and Rohit Sharma put on a patient 42-run opening partnership before both lost their wickets as they tried to accelerate. Kohli and Raina put on 50 before Hom bowled Kohli just as he was looking dangerous.

Ali spares blushes

England’s top order fared even worse and their blushes were only spared by an unbroken 57-run eighth wicket partnership by Ali and Willey.

After last Friday’s dramatic victory over South Africa when England pulled off a record run chase in Mumbai, the batting performance was a major letdown with none of the top six even getting past 22.

Skipper Eoin Morgan, who was bowled for nought, said the team should not have been caught unawares by the more turning conditions in Delhi.

“I think it was simply a matter of not adapting,” Morgan told reporters.

Moeen’s unbeaten 41 was the one innings of real note but he was ably supported by Willey (20) who hit two sixes.

Afghanistan’s chase was dealt a severe blow after destructive opener Mohammad Shahzad (four) was trapped lbw off Willey with the third ball of the innings and they were soon reeling at 39 for five.

But they went down fighting thanks in part to an unbeaten 35 from Shafiqullah, ultimately falling just 15 runs short.

England’s next game is on Saturday against the holders Sri Lanka while Afghanistan face West Indies in their final match.

ICC T20 World Cup 2016: Schedule & Match Fixtures