Gareth Bale's first half opener was cancelled out by a double from England substitutes Jamie Vardy and Daniel Sturridge in a dramatic match at the Stade Felix Bollaert-Delelis.
Wales' star man Bale struck a free kick that squirmed its way past Joe Hart just before half time as England struggled with what seemed to be the wrong team selection for a second game running.
Coach Roy Hodgson made tactical changes at the break by bringing Vardy and Sturridge on for Harry Kane and Raheem Sterling which ultimately rejuvenated the England players.
Vardy scored with just his third touch, but England fans had to wait until stoppage time for Sturridge to pounce and seal the winner for Hodgson's men.
England now top Group B ahead of Slovakia and Wales heading into the final round of games on Monday.
That same day, Northern Ireland clinched an amazing 2-0 win over Ukraine to record their first ever European Championships win, whilst Germany and Poland played out the first 0-0 of the tournament so far.
On Friday, Italy and Spain both progressed to the last 16 by making it two wins from their opening two games. Italy beat Sweden 1-0 through a solo goal from Eder, whilst Spain eased past Turkey 3-0 with two goals by Alvaro Morata and one from Nolito.
The late afternoon game saw Croatia dominate the Czech Republic but only manage to come away with a point. Croatia had gone two up and seemed to be cruising until a header from Milan Skoda sent nerves jangling.
Crowd trouble erupted with just a couple of minutes to go from the Croatia end and that seemed to affect the players who gave away a penalty a short time after the restart. Tomas Necid put the spot kick away to keep the Czech hopes alive into their last match next week.