Real Madrid ace Gareth Bale gave the principality the lead before substitutes Jamie Vardy and Daniel Sturridge turned it around for the Three Lions.
Sturridge’s stoppage-time winner gave Roy Hodgson’s manne four points to go top of the group, after Slovakia beat Russia 2-0 on Wednesday.
Hyped up as the Battle of Britain, the clash was a game of two halves with the Welsh Dragons bossing the first period and England laying siege to Wales’ goal after the break.
The Dragons were fired up for the first half, putting the Poms on the backfoot, with Bale and Arsenal midfielder Aaron Ramsey running hard at the England defence.
But Bale was made to wait until late in the half to make the breakthrough.
And the world’s most expensive player showed just why Real paid £80m for him two seasons ago with a rocket of a free-kick goal.
From 40 yards out, Bale drove the ball past Joe Hart, who gave himself no chance with his poor positioning.
While England dominated ball possession for most of the match up until then, they had little threat going forward.
And Hodgson rang the changes at the break, bringing on Sturridge and Vardy for Harry Kane and Raheem Sterling.
Then, 11 minutes after coming on, Sturridge and Vardy combined to put England level.
Sturridge lifted the ball into the box where it came off the head of Wales captain Ashley Williams, and Vardy pounced.
Sturridge was brilliant again for the second, linking up with his teammates before thrashing home from close range.
The Liverpool ace said he was just happy to have got on the field and grab the winner.
He says: “It’s a great feeling, unbelievable.
“I’m grateful for the opportunity. It’s only one more game in the group so no one should get too excited.
“But it was an amazing feeling. It’s great to help the boys win the game.
Vardy adds: “Everyone wants to be part of the playing lineup and coming off the bench you want to try to make an impact.”