Vinicius scored three goals for Real Madrid
Matchday three of the Champions League was filled with some big fixtures as teams look to cement their spots in the league phase of the competition.
There was a rematch of last year's final as Borussia Dortmund looked to get revenge against Real Madrid at the Bernabeu, whilst Juventus had a tricky match against another German side in Stuttgart.
Elsewhere there were home games for Arsenal and Aston Villa, and AC Milan looked to finally get a win in the competition this season when they hosted Belgium's Club Brugge.
UEFA Champions League results for Tuesday
Real Madrid staged a remarkable comeback, led by Vinicius Junior's hat-trick, to defeat Borussia Dortmund 5-2 after being 2-0 down at halftime.
Juventus suffered a surprising 1-0 loss at home to Stuttgart, with El Bilal Toure scoring a late winner and captain Danilo sent off.
Arsenal secured a narrow 1-0 victory over Shakhtar Donetsk due to an own goal by the visiting goalkeeper, while Aston Villa continued their strong return to European competition with a 2-0 win against Bologna.
AC Milan finally got their first win of the campaign, beating 10-man Club Brugge 3-1, with Christian Pulisic and Tijjani Reijnders finding the net.
In other matches, PSV Eindhoven drew 1-1 with Paris Saint-Germain, and Monaco triumphed 5-1 against Red Star Belgrade. Girona earned their first points with a 2-0 win over Slovan Bratislava.
Champions League Tuesday results
| Match | Venue |
| AC Milan 3-1 Club Brugge | San Siro, Milan |
| AS Monaco 5-1 Red Star Belgrade | Stade Louis II, Monaco |
| Arsenal 1-0 Shakhtar Donetsk | Emirates Stadium, London |
| Aston Villa 2-0 Bologna | Villa Park, Birmingham |
| Girona 2-0 Slovan Bratislava | Estadio Montilivi, Girona |
| Juventus 0-1 Stuttgart | Allianz Stadium, Turin |
| Paris Saint-Germain 1-1 PSV Eindhoven | Parc de Princes, Paris |
| Real Madrid 5-2 Borussia Dortmund | Santiago Bernabeu, Madrid |
| Sturm Graz 0-2 Sporting CP | 28 Black Arena, Klagenfurt |
Champions League Wednesday Fixtures
Five-time winners Barcelona host six-time champions Bayern Munich and Liverpool visit RB Leipzig.
| Fixture | Kick-off Time (BST) |
| Atalanta vs Celtic | 17:45 |
| Brest vs Bayer Leverkusen | 17:45 |
| Atletico Madrid vs Lille | 20:00 |
| Barcelona vs Bayern Munich | 20:00 |
| Benfica vs Feyenoord | 20:00 |
| Manchester City vs Sparta Prague | 20:00 |
| RB Leipzig vs Liverpool | 20:00 |
| Salzburg vs Dinamo Zagreb | 20:00 |
| Young Boys vs Inter | 20:00 |