Mainz dumped out, Gladbach progress
Juan Arango scored the opening goal in the 18th minute before Schalke striker Klaas-Jan Huntelaar was sent off just after the break. Gladbach converted their one-man advantage through Marco Reus, whose second-half double sealed the win, before Jermaine Jones was also dismissed for the visitors in the 90th minute.
Elsewhere, Hertha Berlin ran out 3-1 winners against Kaiserslautern to secure their place in the last eight. Gustavo Ramos gave Hertha a narrow 1-0 lead at half-time before Itay Shechter equalised for Kaiserslautern six minutes after the break. However, goals from Pierre-Michel Lasogga and Patrick Ebert sealed the win for the capital city side.
Regionalliga Nord side Holstein Kiel beat Mainz 2-0 thanks to an own goal by Anthony Ujah and Steve Muller's second-half strike. Ujah turned the ball into his own net in the sixth minute before Muller sealed the win midway through the second half.
In the other match, Stuttgart beat Hamburg 2-1 thanks to a goal in each half from Cacau. The Brazilian striker scored in the 23rd minute and again in the 62nd minute after William Kvist Jorgensen's own goal had drew Hamburg level.