Defender Nico Elvedi netted twice as Moenchengladbach ended their six-year wait to beat Dortmund when their 4-2 home win on Friday lifted the Foals to fourth in the Bundesliga table.
Two goals by Dortmund striker Erling Braut Haaland were bookended by Elvedi netting from set-pieces in the action-packed opening 32 minutes.
Algeria left-back Ramy Bensebaini restored Gladbach’s lead early in the second half before substitute Marcus Thuram headed the hosts’ fourth.
Dortmund are now fifth – out of the Champions League places – after failing to win any of their last three games since their impressive 3-1 win at RB Leipzig in early January.
“We always make the same mistakes,” Dortmund captain Marco Reus told broadcaster ZDF. “If we don’t stop that, it will be difficult to win a game. It stinks, big time,” Reus fumed having hurled his boots away in frustration after being substituted with 19 minutes to go.
In the other direction, Gladbach are fourth having taken 13 points from a possible 15 in 2021.
They are eight points behind leaders Bayern, who are at bottom side Schalke on Sunday.
Following home wins over league leaders Bayern and second-placed RB Leipzig already this season, Gladbach claimed another big-name Bundesliga scalp.
It was also a significant win for their coach Marco Rose, who the German media are tipping to replace caretaker boss EdinTerzic at Dortmund next season.
“We went 3-2 up at just the right moment and then defended well, so we’re very happy,” said Rose.
After 12 straight defeats to Dortmund, Gladbach earned their first win over the Black-and-Yellows since April 2016. “We’re finally ended the run of defeats,” Rose added.
Breel Embolo came on for Gladbach in the second-half despite police claims, which the Swiss striker denies, that he attended a party in Essen last Saturday that broke Germany’s lockdown rules.
Dortmund made a lethargic start at Borussia Park and a Gladbach goal after 44 seconds was ruled out by the VAR.