Wales in stunning comeback
In a game billed as the biggest of the pool stages, England held a 10-point lead at three different stages of the game.
With 10 minutes left on the clock they still clung to a seven-point (25-18) advantage.
Then a sensational try – created by replacement scrumhalf Lloyd Williams, playing on the wing, and finished by starting No.9 Gareth Davies – saw Wales draw level, before Dan Biggar won it with a penalty.
It gave Biggar a record points haul of 23 for a Welshman against England.
England now face an uphill battle to reach the last eight as they still have Australia to play.
However, the biggest problem for Wales is the string of injuries that could leave them even further depleted – with stand-in fullback Liam Williams among the latest casualties.
Wales captain Sam Warburton said the Pool A clash was one of the greatest results of his career.
"It was two evenly matched sides and I always knew there would not be more than seven points in this match and it was going to go to the wire," the flank said.
"Fair credit to England they threw absolutely everything at us. They played really well we really had to be at our best in defence.
"We gave a few too many penalties away but I'm lost for words it is an amazing win.
"I knew in the last 20 minutes we could come through quite strong the one advantage we have in this group is we always said 'keep our composure' no matter what the circumstances.
"We were under a bit of pressure but we managed to see the game out."
England coach Stuart Lancaster, who had been under pressure for his selection of Owen Farrell over George Ford for the fly-half spot, was understandably glum.
"Gutted," said Lancaster who added that England made "dumb" mistakes to give away penalties.
"We were 19-9 up and going well but then there was ill discipline from us and Dan Biggar's great goal kicking," said the English coach.
Wales, hit by injuries before and during the match, saw flyhalf Biggar land all his goal-kicks – his only miss came via a drop-goal.
England, who next face Australia, had only their own indiscipline and failure to put Wales away when on top, to blame for this reverse.
An injury to centre Jonathan Joseph in England's opening 35-11 win over Fiji saw Lancaster re-shape his backline dramatically.
He brought in Rugby League convert Sam Burgess into midfield for just his second Test start in rugby union and recalled Farrell in place of Ford.
It was a powerful trio, with Wales – 54-9 winners over Uruguay boasting a powerful centre in British and Irish Lions star Jamie Roberts.
After a penalty exchange between Biggar – kicking after fullback Leigh Halfpenny was ruled out before the World Cup started – and Farrell made it 3-3.
Biggar then missed with a long-range drop-goal effort before kicking a penalty to put Wales 6-3 in front.
But Farrell's excellent drop-goal – increasingly rare in modern rugby – compensated for slow ball and levelled the match at 6-6.
A huge drive by England's front row led to a scrum penalty and Farrell, who starred off the bench against Fiji, gave England the lead for the first time in the match at 9-6.
England's forwards got on top in both the loose and set-piece, with captain Chris Robshaw starring at the ruck.
Their dominance was rewarded with a try in the 26th minute when, after it seemed the move had collapsed with a poor pass by wing Anthony Watson, full-back Mike Brown kicked on and regathered.
Ben Youngs found wing Jonny May in space out on the left and, with Welsh flyer Hallam Amos, sucked inside before coming out in a last-ditch effort, he went in at the corner and then narrowed the angle to make the conversion easier for Farrell, who added the extras.
England had breathing space at 16-6.
Another Biggar penalty cut England's lead to 16-9 at half-time.
Lancaster brought on dynamic lock Joe Launchbury at the start of the second half in place of Courtney Lawes.
Farrell, justifying his selection, gave England good field position with a well-judged kick and kicked an ensuing penalty.
But Wales scrumhalf Gareth Davies' quick tap and go led to a kickable penalty and England, for all their dominance, now led by just 19-12.
Farrell was on target again to restore England's 10-point advantage at 22-12 before fresh English indiscipline enabled Biggar to cut the lead with two more penalties.
As both sides emptied their benches, Wales centre Scott Williams was taken off on a stretcher.
Wales then lost two members of their back three in the 67th minute, Amos going off with an elbow injury and full-back Liam Williams concussed.
Another powerful scrum shove led to a simple penalty and Farrell eased England out to 25-18 only for Wales to hit back in gutsy and clinical fashion.
Man of the match: Sam Burgess certainly didn't disgrace himself, while Ben Youngs was a real livewire. Billy Vunipola was, as always, strong with ball in hand. Chris Robshaw worked hard, Tom Woods was busy and Geoff Parling was probably the most productive forward. Mike Brown and Owen Farrell were England's two most valuable players. Liam Williams provided some spark from the back, while scrumhalf Gareth Davies produced some of the most crucial plays – including his team's only try. Taulupe Faletau carried strongly, Sam Warburton worked hard and Alun Wyn Jones was another Welsh workhorse. However, our award goes to Wales flyhalf Dan Biggar, who did a great job of keeping his in touch and then landed the match-winning penalty.
Moment of the match: You may want to look at Dan Biggar's match-winning penalty, but the Gareth Davies try in the 71st minute – created by replacement Lloyd Williams – was the match-defining moment.
Villain of the match: Brutal, very brutal, but a stunning game with nothing villainous.
The scorers:
For England:
Try: May
Con: Farrell
Pens: Farrell 4
DG: Farrell
For Wales:
Try: Davies
Con: Biggar
Pens: Biggar 7
Teams:
England: 15 Mike Brown, 14 Anthony Watson, 13 Brad Barritt, 12 Sam Burgess, 11 Jonny May, 10 Owen Farrell, 9 Ben Youngs, 8 Billy Vunipola, 7 Chris Robshaw, 6 Tom Wood, 5 Courtney Lawes, 4 Geoff Parling, 3 Dan Cole, 2 Tom Youngs, 1 Joe Marler.
Replacements: 16 Rob Webber, 17 Mako Vunipola, 18 Kieran Brookes, 19 Joe Launchbury, 20 James Haskell, 21 Richard Wigglesworth, 22 George Ford, 23 Alex Goode
Wales: 15 Liam Williams, 14 George North, 13 Scott Williams, 12 Jamie Roberts, 11 Hallam Amos, 10 Dan Biggar, 9 Gareth Davies, 8 Taulupe Faletau, 7 Sam Warburton (captain), 6 Dan Lydiate, 5 Alun Wyn Jones, 4 Bradley Davies, 3 Tomas Francis, 2 Scott Baldwin, 1 Gethin Jenkins
Replacements: 16 Ken Owens, 17 Aaron Jarvis, 18 Samson Lee, 19 Luke Charteris, 20 Justin Tipuric, 21 Lloyd Williams, 22 Rhys Priestland, 23 Alex Cuthbert.
Referee: Jérôme Garcès (France)
Assistant referees: Romain Poite (France), Mathieu Raynal (France)
TMO: Shaun Veldsman (South Africa)