Aston Villa enjoyed one of their greatest European nights as they beat Champions League opponents Bayern Munich 1-0 at Villa Park.
And Bayern were not the only European heavyweight to be floored as holders Real Madrid lost against Lille in France.
Villa beat the German club 42 years ago to lift Europe’s biggest prize when Peter Withe was the hero in Rotterdam, and Jhon Duran was the matchwinner this time with a 79th-minute strike.
It sent Villa Park wild as memories of that famous European Cup night in 1982 were evoked, with Prince William leading the celebrations from the stand.
Liverpool matched Villa by recording a second successive victory in this season’s competition as they defeated Bologna 2-0 at Anfield.
Mohamed Salah’s timely late intervention made sure of the points after Alexis Mac Allister’s first goal in Europe’s elite club competition gave the Reds an 11th-minute lead against the competition debutants.
It was far from a straightforward night for the hosts but Salah’s ninth goal in as many Champions League appearances kept Bologna at a safe distance.
Kylian Mbappe returned from injury off the bench but Real Madrid slipped to a surprise defeat at Lille.
Mbappe was introduced as a 57th-minute substitute but had minimal impact as Jonathan David’s penalty in added-on time at the end of the first half secured a famous victory for Lille.
It was a first Champions League defeat for Real – who defeated Stuttgart in their opener – since May 2023, having been unbeaten in the entirety of their successful campaign last season.
Juventus scored twice after having a player sent off to produce an outstanding fightback and beat hosts RB Leipzig 3-2.
Benjamin Sesko fired Leipzig ahead, and then converted a penalty midway through the second half after Dusan Vlahovic had equalised for the Italian giants.
Things looked bleak for Juventus when Michele Di Gregorio was red-carded and they fell behind, but Vlahovic struck again before Francisco Conceicao scored the winner eight minutes from time.
Atletico Madrid were humbled 4-0 by Benfica in Lisbon after Kerem Akturkoglu struck early, then Angel Di Maria scored from the penalty spot after Conor Gallagher infringed, before Alexander Bah and Orkun Kokcu added further goals.
Denis Zakaria’s 89th-minute penalty earned Monaco a point as they cancelled out a two-goal deficit to draw 2-2 against hosts Dinamo Zagreb, and Christos Tzolis’ goal gave Club Brugge a 1-0 win away to Sturm Graz.
Elsewhere, Feyenoord claimed a 3-2 away win against Girona in a game that produced eight yellow cards, while Atalanta followed up a 0-0 draw against Arsenal by easing past Shakhtar Donetsk 3-0 in Gelsenkirchen.