Substitute Moussa Dembele scored twice as Lyon stunned Manchester City 3-1 to reach the Champions League semi-finals on Saturday.
The French outsiders will face five-time winners Bayern Munich for a place in the final.
Maxwel Cornet gave Lyon a 24th-minute lead before Kevin De Bruyne levelled on 69 minutes.
But Dembele restored Lyon’s lead in the 79th minute, just moments after coming on as a substitute, and added the killer blow three minutes from time.
The result was another shocking one in the Champions League quarter-finals after Bayern’s 8-2 drubbing of Barcelona and RB Leipzig’s win over Atletico Madrid.
The semi-final line-up will see two German and two French teams compete, a scenario few saw coming when the competition restarted.
Read: Different year same stuff, it’s not good enough: De Bruyne blasts City after Champions League exit
It was sweet redemption for teams from Ligue 1 and Bundesliga though who were written off even before a ball was kicked in the Champions League after the Covid-19 pandemic.
Here’s how Twitter reacted to the shock result:
No farmers here 😉 #UCL pic.twitter.com/2d7Ij6EUNL
— OL English 🇬🇧 (@OL_English) August 15, 2020
FARMERS LEAGUE 🤡
— Kylian Mbappé (@KMbappe) August 15, 2020
👏🏽👏🏽👏🏽 @OL
🤫 The critics have already been silenced. Will we see them further embarrassed by a PSG-Lyon climax to the @ChampionsLeague? 🤔 https://t.co/9UDVjBsyBe pic.twitter.com/v3bFYTyE3U
— FIFA.com (@FIFAcom) August 15, 2020
Talk to them bro! 👏🏽😄🦁
— Memphis Depay (@Memphis) August 15, 2020
L’aventure continue...
— Rudi Garcia (@RudiGarcia) August 15, 2020
Merci pour votre soutien.
Grazie per il vostro sostegno.
Thank you for your support. pic.twitter.com/GP4aKW5wvR
Lyon players who paid tributes to player Tino Kadewere whose brother passed away on Wednesday. The Lyon stars dedicated the win to him.
My brother Tino this victory is for you, be strong my brother! Mon frère Tino cette victoire est pour toi, soit fort mon frère!🤗👊🏿 pic.twitter.com/bC7ja5S6h6
— Moussa Dembélé (@MDembele_10) August 15, 2020
What a team work! A proud moment for the players, staff, president, Club, and supporters!!! Tonight’s victory shows that with dreaming and believing you can achieve things! Also dedicate this victory to Prince Kadewere! Rest in heaven 🙏🏽🕊 pic.twitter.com/NQdwuFrCyH
— Memphis Depay (@Memphis) August 15, 2020
Lyon may have finished seventh in a Coronavirus-curtailed Ligue 1 this season, but this result is by no means a fluke.
Lyon's transfer Business is not talked about enough easily one of the best in recent years pic.twitter.com/RGV9mTKW4Z
— OpulentOxlade (@OpulentOxlade) August 16, 2020
This is the first time in European Cup history (since 1955-56) that there are two French clubs in the Semifinals (Lyon and PSG).
— ESPN Stats & Info (@ESPNStatsInfo) August 15, 2020
This season will also be the second time in European Cup history (since 1955-56) that there are no Spanish, English or Italian semifinalists.
The 2019-20 Champs League semi-finals will see two French teams (PSG, Lyon) and two German teams (RB Leipzig, Bayern Munich) compete for a place in the final; the first time since 2012-13 that there are just two different nations represented at this stage.#thesportsconnect #UCL pic.twitter.com/bbLeFJR3yN
— T2-1 SPOT ON (@1_spoton) August 16, 2020
Then there were those who saw the funny side to it. Look away Man City fans.
Beating lyon is not for everyone 👌😜🤣 pic.twitter.com/Qi9FUpEqV7
— Tom (@tom121882751) August 15, 2020
" Olympic lyon.. The team" she told me not to worry about.. 👏👏👏 pic.twitter.com/ypO4cyk66a
— Toqeer (@Toqeereee) August 16, 2020
Beat lyon and you will play bayern in the semis
— Allan Saint-Maximin stan account 🐍🇯🇲 (@huchiboss) August 15, 2020
Man city: pic.twitter.com/eW2IoYrvDU
For Guardiola and Sterling, this defeat raised a few questions
He is finished. Football has left him behind. He's had these bad nights for 9 years. His latest one was against the worst Lyon team in 27 years. They finished 7th & haven't played football in 5 months and your only retort is about "Mourinho fans." Next season will be worse. https://t.co/FdZxMERdjP
— Babanla (@biolakazeem) August 16, 2020
One of these pictures resulted in a goal and one of these pictures did not result in a goal. pic.twitter.com/CzBWtLiduE
— Ste Hoare (@stehoare) August 15, 2020
Nobody knew Group G was Group of Death
Group G > https://t.co/ZWtxGGvECE
— RB Leipzig English (@RBLeipzig_EN) August 15, 2020
And this is where we go now
🤩 Introducing your 2019/20 semi-finalists!
— UEFA Champions League (@ChampionsLeague) August 15, 2020
🏆 Pick the champion...#UCL pic.twitter.com/qeK4WPXmbl