England 190 for 4 (Hales 116*, Morgan 57) beat Sri Lanka 189 for 4 (Jayawardene 89, Dilshan 55) by six wickets
Scorecard and ball-by-ball details

A breathtaking display from Alex Hales, who hammered England's first T20 hundred, inspired a beleaguered team to their highest-ever T20 run chase as they hunted down 190 to overcome Sri Lanka and keep alive a realistic chance of progressing in the tournament.

It was an astonishing turnaround after a shambolic fielding display which included four dropped catches and a missed run-out to allow Sri Lanka to reach an imposing 189 including a stand of 145 between Mahela Jayawardene and Tillakaratne Dilshan. England found themselves 0 for 2 after the first over of their chase before a brilliantly calculated assault by Hales and Eoin Morgan who added 152 in 15.2 overs for the third wicket.

Hales, who was dropped on 55 at deep square-leg by Jayawardene as fielding woes afflicted both teams, closed out the match with three sixes in six balls after Nuwan Kulasekara, who began with a double-wicket maiden, returned to remove Morgan and Jos Buttler in the 17th over to bring Sri Lanka back into the match but they could not stop Hales' onslaught.

The brief role played by Ravi Bopara should not be overlooked either, as he deflected two boundaries to third man in Lasith Malinga's final over to ensure England had some breathing space. Crucially, Malinga went wicketless - and conceded nearly eight an over - while Ajantha Mendis was dispatched for 52 which included 25 off his final over to swing the chase firmly England's way.

Before this match Hales jointly held the record for England's highest T20 innings - 99 shared with Luke Wright - and this time was not to be denied three figures as he cracked a fourth six, over cover, during his final dip to reach a hundred off 60 balls. "It was one of the best knocks I've ever seen," a delighted, relieved, and slightly hoarse Stuart Broad said.

An overseas season of regular misery for England appeared to be having another chapter added to it when Michael Lumb missed his first-over heave at Kulasekara and Moeen Ali edged to second slip first ball, but Hales and Morgan kept their composure which is not something that has been said much of this team in recent months.

After nine overs England were well behind the required rate on 56 for 2, but Morgan then went after Angelo Mathews and Mendis, struggling with a wet ball and not holding any fear. 29 came in the next two overs to kick-start the chase. In the space of six overs, which brought 86 runs, an asking rate that had reached 12.18 came down to far less imposing 9.60.

Morgan's half-century came after a run of 10 T20I innings where he had a top score of 34 and he struck the ball crisply, especially a reverse sweep and a lofted drive over cover off Mendis. Hales' last 54 runs came from just 20 balls and such was the way England targeted Mendis, Mathews and Thisara Perera (off whose bowling Jayawardene spilled Hales) they could afford to take a more cautious approach off Malinga's final two overs.

England's memorable chase meant that a moment of controversy early in the match did not hold as much significance come the end. Facing his first ball, Jayawardene was squared up by Jade Dernbach and the outside edge flew towards Lumb at point who dived forward to claim the chance in a rare example of international-standard fielding. But Jayawardene, as is his right, stood his ground and that immediately threw open the prospect of what happened next.

After rocking and rolling the replays for a considerable time the third umpire, Steve Davis, decided there was enough doubt over whether the ball had carried. There was disbelief from England; Dernbach almost lost his cool although Broad, already a touch light in the pocket after the New Zealand match, just about managed to bite his lip.

What could (and, by all logical views, should) have been 4 for 2 then descended into chaos for England. All their practice with wet balls was certainly not a case of making perfect. Jayawardene was given three lives - a catch on 19, a run out on 42 and another catch on 80 - while the out-of-form Dilshan was shelled on 21 during a half-century that equalled his slowest in T20. To cap the innings, Thisara Perera was put down in the last over by Bopara at wide long-on who, surprisingly, was not given a bowl.

But while he had fortune, Jayawardene also played another calculated and deft T20 innings. His fifty came off 32 balls and his next 37 runs took 18 balls to leave him within sight of a second century before he missed a straight ball from Chris Jordan. At the midway mark few expected him to be on the losing side.