The squad faced Ukraine at the Stadio Olimpico in Rome on Saturday evening (3 July), and will now meet Denmark in the last four after their victory.
Harry Kane got the night off to a positive start with an early strike in the first half, before heading in his second shortly after Harry Maguire had doubled the lead immediately after half-time.
Substitute Jordan Henderson scored the fourth goal, making it his first ever goal for England.
After the game, he told the BBC: “I always felt it would come eventually but I never really think about it, that I need to score goals. I need to concentrate on my job on the pitch.
“Of course I would have liked to have scored more goals but I can’t complain, I’m here, contributing and managed to get on the scoresheet.”
Manager Gareth Southgate made two changes from the Germany victory, as Mason Mount was recalled and Jadon Sancho handed his first start of the finals.
England reverted to the four-man defence which operated across the group stages, with Kieran Trippier dropping to the bench and Bukayo Saka missing out completely.
Southgate told the BBC: “It’s fabulous. It’s still sinking in a bit, we are in another semi-final, three in three years.
“We want to go the two steps further, I know what will be happening at home and that’s great.
“They should be enjoying it, it’s been a long year for everyone and I’m chuffed the two performances have brought so much enjoyment and happiness to people.”
England will now play Denmark in the semi-finals on Wednesday (7 July) at 8pm.