Daniel Sturridge scored the winner in second-half added time to send England to the top of Euro 2016 Group B – although the Three Lions had to fight hard for their first win of this campaign.
Roy Hodgson’s side fell behind to a long-range Gareth Bale free-kick shortly before half-time, and the England manager brought on Sturridge and Jamie Vardy at half-time to regain the upper hand.
Vardy equalised in the 56th minute with a scrambled effort, but Wales looked to have held out for a point before Sturridge fired home with 91 minutes on the clock.
England 2-1 Wales
UEFA Euro 2016
Thursday 16 June
Stade Bollaert-Delelis, Lens
Hodgson kept faith in the same XI that drew with Russia on Saturday, but the familiarity of their opponents led to an altogether more frantic and disjointed opening 25 minutes than in Marseille.
The pace of the game made it harder for either side to fashion meaningful chances, although Adam Lallana gave England an early chance to take the lead, twisting clear on the right-hand side and delivering a fine cross to the edge of the six-yard box, with Raheem Sterling firing over.
Gary Cahill then headed a free-kick into the arms of Wayne Hennessey when a deflection either side would have produced a goal, and Wales’ Ben Davies chanced his arm too literally, when he handled the ball unintentionally when clearing his lines. German referee Felix Brych waved play on.
Statistics showed that by the 40th minute England had completed 100 more passes than Wales, but it counted for little when Bale lined up a free-kick closer to the halfway line than Joe Hart’s goal.
The Real Madrid forward shot anyway, and beat Hart’s despairing drive with a dipping, powerful effort.
Hodgson reacted decisively at half-time, introducing Sturridge and Vardy in place of Kane and Sterling, and their introduction soon paid off.
England increased their tempo and tried to take control, and on 56 minutes they drew level.
Wayne Rooney burst through midfield to steer a low shot from the edge of the area that Hennessey could only parry out for a corner.
Rooney’s set-piece drifted clear, but Sturridge chipped back into the danger area, and the ball fell down to Vardy to bundle home from close range. Although the Leicester man looked to be in an offside position, the previous touch came from a Wales player.
The second half was all England, with Kyle Walker a threatening presence on the right, surging forward from full-back and teasing Wales defenders with his footwork and perceptive passing.
But Wales countered this threat by dropping deeper and defending for their lives, and Hodgson responded in turn by introducing Marcus Rashford as a third forward.
The Manchester United 18-year-old eclipsed his national and club captain Rooney as the youngest player to represent the Three Lions in a major tournament, and looked immediately at ease.
Finding a way through Chris Coleman’s massed defence was another matter, and England looked to be running out of time when Danny Rose chipped a cross into the box deep into added time.
The ball fell to Sturridge, who played a one-two with Dele Alli before regathering, taking a touch and stabbing past Hennessey.
England (4-3-3): 1 Joe Hart (Manchester City); 2 Kyle Walker (Tottenham), 5 Gary Cahill (Chelsea), 6 Chris Smalling (Manchester United), 3 Danny Rose (Tottenham); 10 Wayne Rooney (captain; Manchester United), 17 Eric Dier, 20 Dele Alli (both Tottenham); 8 Adam Lallana (Liverpool) 9 Harry Kane (Tottenham), 7 Raheem Sterling (Manchester City).
Substitutes: 11 Jamie Vardy (Leicester City) for Kane ht; 15 Daniel Sturridge (Liverpool) for Sterling ht, 22 Marcus Rashford (Manchester United) for Lallana 73.
Substitutes not used: 4 James Milner (Liverpool), 12 Nathaniel Clyne (Liverpool), 13 Fraser Forster (GK; Southampton), 14 Jordan Henderson (Liverpool), 16 John Stones (Everton), 18 Ross Barkley (Everton), 19 Jack Wishere (Arsenal), 21 Ryan Bertrand (Southampton), 23 Tom Heaton (GK; Burnley).
Goals: Vardy 56, Sturridge 90
Manager: Roy Hodgson
Wales (5-3-2): 1 Wayne Hennessey (Crystal Palace); 2 Chris Gunter (Reading), 5 James Chester (West Bromwich Albion), 6 Ashley Williams (captain; Swansea City), 4 Ben Davies (Tottenham Hotspur), 3 Neil Taylor (Swansea City); 7 Joe Allen (Liverpool), 16 Joe Ledley (Crystal Palace), 10 Aaron Ramsey (Arsenal); 11 Gareth Bale (Real Madrid), 9 Hal Robson-Kanu (Unattached).
Substitutes: 14 David Edwards (Wolves) for Ledley 66, 20 Jonathan Williams (Crystal Palace) for Robson-Kanu 71.
Substitutes not used: 12 Owain Fon Williams (GK; Inverness Caledonian Thistle), 13 George Williams (Fulham), 15 Jazz Richards (Fulham), 17 David Cotterill (Birmingham City), 18 Sam Vokes (Burnley), 19 James Collins (West Ham United), 21 Danny Ward (GK; Liverpool), 22 David Vaughan (Nottingham Forest), 23 Simon Church (MK Dons).
Goals: Bale 42
Manager: Chris Coleman
Referee: Felix Brych (Germany)