Haaland makes it 11 goals in seven as Dortmund beat PSG
Teenage striker Haaland scored eight times in the group stage for Salzburg before joining Dortmund in January and continuing to plunder goals at a frightening rate.
He took his BVB tally to 11 in seven appearances to deservedly settled the game in Dortmund's favour, leaving PSG facing the prospect of further heartache at this stage of the competition.
Neymar, returning from a rib injury, had stolen an equaliser with 15 minutes remaining, but Haaland's second effort – a stunning 18-yard drive – swiftly followed, and Thomas Tuchel has plenty of work to do against his former side back in Paris to avoid a fourth straight last-16 exit.
Neymar narrowly missed the target with an 11th-minute free-kick, although his next set-piece could have led to the opener at the other end as Jadon Sancho launched a five-man break from a PSG corner but selfishly went alone and shot wide.
Keylor Navas had to be alert to parry away a curling effort when Sancho threatened again, before Haaland thumped past the left-hand post from his first sight of goal.
Kylian Mbappe blasted straight at Roman Burki twice in quick succession as PSG belatedly fed him in the area in the second half, and the visitors were made to pay when Haaland found his range in the 69th minute.
Raphael Guerreiro's low shot from Achraf Hakimi's cutback was blocked in front of Navas, but Haaland reacted quicker than any defender to lift the loose ball over the prone goalkeeper.
That strike sparked a manic spell, and PSG were level when Mbappe squared for Neymar to tap into an unguarded net and silence the Signal Iduna Park crowd.
However, Haaland was not to be outdone and thundered a sensational drive into the top-left corner from teenage substitute Giovanni Reyna's pass two minutes later.
Neymar went close to providing another equaliser when he struck the outside of the post nine minutes from time, but Dortmund held on to triumph.
What does it mean? Attacking stars belatedly show
It appeared for a time as though this clash, pitting two of Europe's most thrilling attacks against a pair of shaky defences, would improbably end goalless. But the all-star cast of Haaland, Sancho, Neymar and Mbappe delivered in the second half, although PSG's strike was scarcely deserved and Dortmund may yet rue conceding an away goal.
Haaland hits heights again
A pair of disappointing first-half efforts turned out to be mere sighters for Haaland, whose sensational form shows no signs of slowing. With 11 goals in seven Dortmund games, he has now enjoyed the best start to a career at any Bundesliga club in history. Few would bet against the 19-year-old scoring again in Paris.
PSG may pay for Verratti
Marco Verratti is key to all that PSG do well and had seen his minutes restricted in recent weeks in an apparent bid to save his legs for this game. The Italy international played his part in the midfield battle admirably for 88 minutes, but then he received a needless booking for dissent and will now miss the second leg.
Dortmund go to relegation-threatened Werder Bremen in the Bundesliga on Saturday, while PSG are at home to Bordeaux in Ligue 1 on Sunday.