Erling Haaland scored another brace - his first an amazing acrobatic volley - to top a fine week as Dortmund put fierce rivals Schalke to the sword in the Bundesliga.
Fresh from netting twice in Dortmund's 3-2 victory over Sevilla in the Champions League last-16 first leg tie on Wednesday, the Norwegian continued his rich vein of form in the shape of a stunning goal to double Dortmund's lead before half-time.
Jadon Sancho broke the deadlock in the Revierderby three minutes earlier with a clever effort of his own before setting up Haaland's beauty.
Haaland nets brace on return to send Dortmund top with win over Mainz
- Everton smash Anfield hoodoo with victory over Liverpool
- Impressive Frankfurt down faltering Bayern
- 'We demand 100%' - Tuchel explains hauling off sub Hudson-Odoi
Schalke took the game to their visitors in the early stages of the second-half, with Suat Serdar seeing his effort pushed onto the post by Marwin Hitz, who then repelled Matthew Hoppe.
But Edin Terzic's side sealed all three points on the hour-mark when Raphael Guerreiro completed a fine team move, set up by Marco Reus making his 300th Bundesliga appearance.
Teenager Jude Bellingham then came off the bench to set up Haaland on a plate for his 17th goal of the campaign to complete the rout.
The victory keeps Dortmund in sixth but closes the gap on fourth-placed Eintracht Frankfurt to six points, while Schalke remain bottom, nine points from safety.
TALKING POINT - The perfect week for Erling Haaland
Just when we thought we had seen it all from Haaland this week the Norwegian only goes and pulls another ridiculous goal out of the bag. It was arguably his best goal in the Bundesliga - in what is quite possibly his final season in Germany.
With 17 goals to his name domestically, Haaland has now scored more goals this season than Schalke. He has been carrying an out of sorts Dortmund side all season, and yet his influence may not prove enough even for a top-four finish. The clamour for his signature will only grow after this blistering week and you can't blame him for having his head turned.
Whatever happens with his future, Schalke won't have to worry about Haaland next season whether he stays or goes. Just one league win so far means their fate is all but sealed.
MAN OF THE MATCH - Erling Haaland (Dortmund)
With two goals from three shots, Haaland was on fire in front of goal. He's the man on everyone's lips at the moment, but Sancho's contribution shouldn't go ignored. Dortmund had been struggling to create anything of note until his lovely opening goal which was quickly followed by a smart assist.
'He shoots like a mule!' - Haaland's monster thighs help Borussia Dortmund down Sevilla
Schalke: Fahrmann 5, Becker 5, Oczipka 5, Thiaw 5, Kolasinac 5, Boujellab 5, Stambouli 4, William 5, Serdar 5, Harit 5, Hoppe 5.. subs: Langer 5, Mascarell 5, Raman 5, Schöpf 5.
Dortmund: Hitz 6, Morey 7, Can 7, Hummels 7, Guerreiro 8, Dahoud 8, Delaney 7, Brandt 7, Reus 8, Haaland 9, Sancho 9.. subs: Moukoko N/A, Reinier N/A, Bellingham 7, Meunier N/A, Reyna N/A
42' - GOAL! Schalke 0-1 Dortmund (Jadon Sancho): Finally, Dortmund break the deadlock! Stambouli runs into trouble inside his own area and Sancho pounces on the loose ball. He deceives the goalkeeper with a clever shot from the edge of the penalty area which beats Langer at his near post.
45' - GOAL! Schalke 0-2 Dortmund (Erling Haaland): What a fantastic goal from Haaland! Sancho turns provider, picking the ball up on the left flank and finding Haaland, who peels away at the far post. He hangs in the air for what seems like an age before finishing with a beautiful acrobatic volley into the bottom corner. Amazing!
60' - GOAL! Schalke 0-3 Dortmund (Raphael Guerreiro): That will do it! Schalke had been putting their visitors under pressure, but this fine team goal will put the result out of doubt! Guerreiro feeds Reus on the left flank, continues his run and is in space to receive the return pass, slotting Dortmund's third past Langer.
79' - GOAL! Schalke 0-4 Dortmund (Erling Haaland): That man Haaland again! It's as easy as you like for the Norwegian - he's in the right place at the right time to meet Bellingham's pass across the face of goal and it's a simple tap-in for his 17th goal of the season.
- Aged 20 years, 10 months and 26 days Jadon Sancho is the youngest player in Bundesliga history to score 35 goals.
- Marco Reus made his 300th Bundesliga appearance.
Raiola plans Haaland talks with Man City in January – Paper Round
Marotta says Juventus missed chance to sign Haaland for €2 million