Match ends, Borussia Dortmund 3, Inter Milan 2.
Achraf Hakimi scored two second-half goals as Borussia Dortmund overturned a two-goal deficit to beat Inter Milan in a thriller at the Westfalenstadion.
The 21-year-old right-back pulled one back off his shin before firing the winner in the 77th minute, after Julian Brandt equalised for the hosts.
First-half goals from Lautaro Martinez and Matias Vecino had given Antonio Conte's side a 2-0 lead.
Dortmund move above Inter into second spot in Champions League Group F.
The German side are just a point behind leaders Barcelona, who were held to a surprise goalless draw at the Nou Camp by Slavia Prague.
The visitors took the lead in the fifth minute when Martinez fired in from close range as the Italian side started brightly.
Dortmund responded but Mario Gotze's effort was well-saved by visiting captain Samir Handanovic before Vecino applied the finishing touch to a sweeping team move.
History was against the hosts, who had not won a Champions League match after being behind at half-time since October 2001, but they produced 14 shots at goal after the break.
Morocco international Hakimi - who is on a two-year loan from Real Madrid - got the ball rolling with his third European goal of the campaign with an untidy but effective finish.
German striker Brandt then restored parity before Hakimi, who has now scored four of Dortmund's five European goals this term, combined with Englishman Jadon Sancho to slot the winner past Handanovic.
Dortmund travel to group leaders Barcelona in their next match on Wednesday, 27 November (20:00 GMT), while Inter go to bottom club Slavia at the same time.
Dortmund make history - the stats
- Borussia Dortmund won a Champions League game having been two goals behind for the first time in their history.
- Inter lost a Champions League match having led by two goals for the first time in their history.
- Inter have lost four consecutive away games in the Champions League for the first time.
- Lautaro Martinez is the first player to score in three consecutive Champions League appearances for Inter since Samuel Eto'o in 2010.
- 7SanchoSubstituted forPiszczekat 82'minutes
- 23T HazardBooked at 79minsSubstituted forGuerreiroat 88'minutes
- 10GötzeSubstituted forAlcácerat 64'minutes
- 6de Vrij
- 37SkriniarBooked at 30mins
- 87CandrevaBooked at 48mins
- 8VecinoSubstituted forSensiat 68'minutes
- 34BiraghiBooked at 1minsSubstituted forLazaroat 66'minutes
- 9LukakuSubstituted forPolitanoat 73'minutes
- Danny Makkelie
- Shots on Target
Second Half ends, Borussia Dortmund 3, Inter Milan 2.
Attempt missed. Lautaro Martínez (Inter Milan) right footed shot from the centre of the box misses to the left. Assisted by Antonio Candreva with a cross.
Attempt blocked. Paco Alcácer (Borussia Dortmund) right footed shot from the centre of the box is blocked. Assisted by Achraf Hakimi.
Attempt saved. Stefano Sensi (Inter Milan) right footed shot from the centre of the box is saved in the centre of the goal. Assisted by Matteo Politano.
Foul by Julian Weigl (Borussia Dortmund).
Nicolò Barella (Inter Milan) wins a free kick in the attacking half.
Substitution, Borussia Dortmund. Raphael Guerreiro replaces Thorgan Hazard.
Nico Schulz (Borussia Dortmund) wins a free kick in the defensive half.
Foul by Nicolò Barella (Inter Milan).
Foul by Mats Hummels (Borussia Dortmund).
Matteo Politano (Inter Milan) wins a free kick in the attacking half.
Foul by Axel Witsel (Borussia Dortmund).
Stefano Sensi (Inter Milan) wins a free kick in the defensive half.
Substitution, Borussia Dortmund. Lukasz Piszczek replaces Jadon Sancho because of an injury.
Thorgan Hazard (Borussia Dortmund) is shown the yellow card for a bad foul.
Foul by Thorgan Hazard (Borussia Dortmund).
Nicolò Barella (Inter Milan) wins a free kick on the right wing.
Goal! Borussia Dortmund 3, Inter Milan 2. Achraf Hakimi (Borussia Dortmund) right footed shot from the right side of the box to the centre of the goal. Assisted by Jadon Sancho with a through ball.
Substitution, Inter Milan. Matteo Politano replaces Romelu Lukaku.