Euro 2024 host Germany was dumped out of the tournament on Friday after a 2-1 quarterfinal defeat by Spain in Stuttgart.
Dani Olmo, who plays for Bundesliga club RB Leipzig, opened the scoring early in the second half, finishing off a slick attacking move and converting an assist from 16-year-old sensation Lamine Yamal.
With Germany seemingly out of time, Florian Wirtz’s slick finish in the 89th minute kept the tournament host’s hopes alive.
However, in extra-time Spain conjured up their own late goal on 119 minutes, Mikel Merino heading home the winner to send the three-time Euros winner to the semifinals.
It marks the second successive European Championships in which Spain has reached the semifinals stage while Germany’s run at its home tournament is over.
Tournament winners in 1964, 2008 and 2012, Spain will play France in the semifinals, after Les Bleus beat Portugal on penalties later on Friday in Hamburg.
Spain suffered a blow in the opening 10 minutes when its 21-year-old midfield star Pedri was forced off having sustained an injury after he was fouled by German counterpart Toni Kroos. Pedri was replaced by Olmo, who plays for Bundesliga club RB Leipzig.
The opening 20 minutes in Stuttgart were played in extremely open fashion, with Germany’s Kai Havertz in the thick of the action early on. The Arsenal forward had a goalscoring chance when he controlled a long pass on his chest before he hit a right-footed shot straight at Unai Simón.
Olmo was the next to test one of the two goalkeepers when his long-range effort stung the palms of Manuel Neuer.
After the halftime break and a series of substitutions for both sides, Spain’s captain Alvaro Morata had a golden opportunity to open the scoring following some clever hold-up play deep inside the German box but he blazed over the bar.
Spain was eventually rewarded for its bright start to the second half when 16-year-old Yamal’s beautifully weighted pass was swept into the bottom corner by Olmo in the 52nd minute to give Luis de la Fuente’s side the lead and stun the host nation.
Germany turned up the attacking emphasis after going behind, with Niclas Füllkrug, who has scored twice off the bench this tournament, coming on just minutes later.
Second-half substitute Robert Andrich – sporting a new pink haircut – tested Simón with a long-range shot while Füllkrug hit the post with just over 10 minutes remaining.
With Füllkrug and Havertz leading the line for Germany, Julian Nagelsmann’s side began throwing an increasing number of crosses into the Spain box, but La Roja’s center-back pairing of Aymeric Laporte and Nacho held firm.
Nagelsmann then introduced another attacker – Thomas Müller – to ramp up the pressure on Spain.
That German pressure almost told, when Simón’s poor kick resulted in Havertz being played through one-on-one with the Spanish goalkeeper, but his dainty chip landed agonizingly over the bar.
Then Germany found its equalizer when a deep cross from Maximilian Mittelstädt was headed back by Joshua Kimmich and Wirtz pounced to smash home.
The first 15 minutes of extra-time were cagey. Mikel Oyarzabal’s shot went close, while an effort from Wirtz flew past the post.
Penalties looked to be looming but, with 118 minutes played, Olmo swung in a dangerous cross and Merino was there to head Spain into the semifinals and spark jubilant scenes of celebration among La Roja’s fans.
There were still some heart-in-mouth moments for Spain, in particular when Füllkrug’s header whizzed past the post.
Germany continued to push and although Spanish right-back Dani Carvajal was sent off in the dying moments, Spain held on for a famous victory to see it into the final four of Euro 2024.