Eintracht Frankfurt stunned Barcelona with a dramatic victory at the Nou Camp to set up a Europa League semi-final against West Ham.
After the first leg had finished 1-1, the German side stormed into a 3-0 lead in the second and looked in control before two late goals for Barcelona.
Filip Kostic’s penalty and Rafael Borre’s superb strike were followed by another for Kostic after the break.
But Sergio Busquets’ effort and Memphis Depay’s penalty set up a tense finish.
Frankfurt defender Evan Ndicka was also sent off for a second yellow card for what looked a soft foul on Luuk de Jong for the spot-kick, with nine minutes added on following a VAR malfunction.
But Frankfurt, who sit ninth in the Bundesliga and won this competition in its previous guise in 1980, saw out a memorable victory to the delight of their almost 30,000 travelling fans.
Barcelona, on a superb run since the arrival of Xavi, did not know how to cope with the Bundesliga outfit’s clinical counter-attacks and Frankfurt could have had more.
Kostic slotted the first from the spot following a foul by Eric Garcia but the goal of the game came from Borre, who thundered a strike into the roof of the net from distance.
The hosts had chances of their own and Pierre-Emerick Aubameyang headed over in the first half before failing to connect with Ousmane Dembele’s low cross in the second.
Busquets saw an initial effort ruled out for offside in added time before sparking a dramatic finish with a well-taken goal, but the hosts ran out of time after Depay’s penalty just crept over the line.
It means Frankfurt can look forward to a semi-final against David Moyes’ Hammers.
In the other game, West Ham roared to an incredible Europa League victory in Lyon to reach their first European semi-final in 46 years after a stunning 3-0 second-leg victory.
David Moyes’ side were big underdogs following last week’s 1-1 draw at the London.
But it was hosts Lyon who were destroyed after two goals in seven minutes at the end of the first half from Craig Dawson and Declan Rice put West Ham in control.
When Jarrod Bowen made it 3-0, and 4-1 on aggregate, Lyon heads dropped.
Christopher Nkunku scored twice to help Leipzig reach its first semifinals in a European competition with a 2-0 victory at Atalanta in the second leg of the Europa League quarterfinals on Thursday.
Nkunku scored after 18 minutes on a feed from Konrad Laimer and doubled the lead on a penalty late in the second half to seal Leipzig’s 3-1 aggregate win.
Do you find OkayWap useful? Click here to give us five stars rating!