Manchester United striker Danny Welbeck scored a well-taken winner for England in the 78th minute after the introduction of substitute Theo Walcott swung a see-saw Group D battle back in his side's favour yesterday.
England had got off to a dream start when recalled striker Andy Carroll headed them into a 23rd-minute lead. But an own goal from Glen Johnson on 49 minutes followed by a header from Olof Mellberg in the 59th minute threatened to set up a disastrous night for Roy Hodgson's side. However, the substitution of James Milner for Walcott changed the game.
The Arsenal winger lashed in a 64th-minute equaliser to make it 2-2 and then provided the run and pass which set up Welbeck's winner. England's first ever competitive victory over the Swedes means they will qualify for the quarter-finals with only a point in their final group game against co-hosts Ukraine in Donetsk next Tuesday.
However, England manager Hodgson will want to see a marked improvement from his side if they are to secure the draw they need after a performance littered with errors and shaky defending.
England had started positively, Scott Parker forcing a fine save out of Andreas Isaksson after only seven minutes with a fine swerving effort from 20 yards that the Swedish keeper parried to safety.
Sweden meanwhile had to wait until 20 minutes before threatening the England goal, captain Zlatan Ibrahimovic letting fly with a long range shot that was blocked comfortably by Joe Hart.