Robert Lewandowski struck twice in the first half as holders Bayern Munich cruised past Schalke 04 3-0 on Wednesday to reach the German Cup semi-finals.
The Pole, who had netted a hat-trick in their 8-0 demolition of Hamburg SV last week, got onto the scoresheet after three minutes when Franck Ribery sent him through to chip the ball over the keeper.
Thiago Alcantara's header made it 2-0 before Lewandowski scored again.
Ribery, making his return after a four-week injury break, cut the ball back and the forward drilled in from the edge of the box in the 29th minute.
Bayern stepped off the gas after the break but the dismissal for a second booking of defender Holger Badstuber, on loan at Schalke from Bayern until the end of the season, capped a miserable evening for the visitors.
Borussia Moenchengladbach had earlier booked their semi-final spot after scoring twice from the penalty spot to beat Hamburg SV 2-1.
Borussia Dortmund's quarter-final at third-tier Sportfreunde Lotte on Tuesday was called off following heavy snowfall prior to the game and will be played on March 14.
Eintracht Franfurt also made it to the last four for the first time in a decade following Tuesday's 1-0 victory over Arminia Bielefeld.
Monaco down Marseille in French Cup thriller, PSG through
Thomas Lemar's extra-time winner sent Monaco into the quarter-finals of the French Cup after a thrilling 4-3 victory over Olympique de Marseille on Wednesday as holders Paris St Germain left it late to down Ligue 2 side Niort.
Lemar scored with a powerful shot from inside the box in the 113th minute after Marseille had come from behind three times.
Monaco went ahead in the 16th minute thanks to keeper Yohann Pele's own goal before Dimitri Payet equalised with a fine half-volley on the stroke of halftime, as the hosts sought to put Sunday's 5-1 home league hammering by PSG behind them.
Monaco's 18-year-old forward Kylian Mbappe then scored his seventh goal in his last five starts when he cleverly turned in Benjamin Mendy's cross from the right in the 66th minute.
Remi Cabella, however, sent the tie into extra time when he found the net from close range in the 84th.
Mendy put the visitors ahead again in the 105th minute after being set up by a pass from Mbappe, but Cabella equalised six minutes later. There was no coming back for the hosts, however, after Lemar rifled home.
Monaco, who will take on PSG in the League Cup final next month, could also face the French Cup holders in the next round after they fielded a largely reserve side and beat Niort 2-0.
PSG struggled on a damp pitch in the rain but late goals from second-half substitutes Javier Pastore in the 78th minute and Edinson Cavani in stoppage time secured victory for the French champions.
Lazio beat Roma in Cup clash marred by racist chanting
Lazio beat neighbours AS Roma for the first time in eight meetings on Wednesday, although racist chanting and a boycott by their opponents' fans marred their 2-0 win in the Italian Cup semi-final first leg.
Sergej Milinkovic-Savic and Ciro Immobile scored in each half for Lazio, who last beat their neighbours in the Italian Cup final in May 2013, at a disappointingly half-empty Stadio Olimpico.
Roma defender Anthony Rudiger was repeatedly subjected to racist chanting from Lazio fans during the first half, prompting the stadium announcer to warn that the match would be interrupted if it continued. The chanting died down after that.
The Roma end of the stadium remained deserted as the supporters continued their boycott in protest at partitions which have been installed on the Curva Sud (South Curve).
Authorities had lowered the partitions as a compromise measure but Roma fans want them removed altogether, saying the barriers limit their view of the pitch and divide groups of supporters who used to sit together.
They also say they have been banned from waving flags and banners and get fined for sitting in the wrong seats.
Roma midfielder Radja Nainggolan, the team's driving force this season, had a relatively subdued match while Lazio looked lively.
Officially the home side at the stadium shared by the two teams, Lazio went ahead when Felipe Anderson burst down the right and pulled the ball back for Milinkovic-Savic to fire into the roof of the net on the half hour.
The second goal came from a similar move as Keita Balde Diao got away from his marker on the right and slipped the ball to Immobile to score from close range in the 77th minute.
Roma had won five of the last seven meetings, all in Serie A, while the other two matches were drawn.