The result means the sixth game in a row without a loss for Borussia Dortmund.
Borussia Dortmund started the match energetically and took the lead right at the start of the match. After just five minutes, Donyell Malen struck.
The team made it 2-0 in the 18th minute, through Jude Bellingham on a penalty.
Borussia Dortmund also extended their lead to 3-0 in the 20th minute, when Sebastian Haller scored.
Borussia Dortmund also made it 4-0 in the 32nd minute, when Sebastian Haller found the net once again. It took until the 75th minute before Ramy Bensebaini reduced the penalty for Mönchengladbach.
Mönchengladbach reduced again in the 85th minute through Jonas Hofmann on a pass from Lars Stindl.
The 5-2 goal came in overtime, when Giovanni Reyna pounced and scored. The 5-2 goal was the last of the match.
With two rounds remaining, Borussia Dortmund are in second place in the table, and Mönchengladbach are in eleventh place.
On Sunday 21 May, Borussia Dortmund meets Augsburg away at 17.30 and Mönchengladbach meets Bayer Leverkusen away at 19.30.