Wayne Rooney scored the only goal of the game as England knocked-out host nation Ukraine 1-0, who will feel aggrieved a second half equaliser was denied despite clearly crossing the line. England had to endure a nervy first period in which Ukraine dominated, created all the chances yet it was the Three lions who had the best chance when the returning Wayne Rooney was presented with a free close range header but fluffed his lines.
England's defence was often stretched but their resilience ensured a scoreless opening half.
Yet if the first half was all one way this quickly changed within three minutes of the restart as England took the lead.
The host nation cleared a corner but failed to deal with Steven Gerrard's return leaving Rooney with a simple header at the back post.
For a few moments Ukraine looked drained but then in the space of a couple of minutes they regained their composure. First Milevskiy should have levelled but headed over with an unchallenged header, then came the talking point of the night.
Devic broke quickly through the middle and his shot was parried by keeper Joe Hart towards his own goal and whilst John Terry desperately cleared off the line, television replays indicated the ball had crossed the line.
The game became open as Ukraine needed to win to have any hope of progression whilst England looked to take advantage on the break as chances came and went at both ends.
But England held out for a hard fought victory to finish top of their group and will now face Italy in the quarter-finals on Sunday.
Referee: Viktor Kassai (HUN)
Venue: Donbass Arena, Donetsk
England scorers: Rooney 48 Ukraine scorers:
Yellow cards: Shevchenko (UKR), Tymoschuk (UKR), Rakitskiy (UKR), Gerrard (ENG), Cole (ENG)