Bayern Munich extended their lead at the top of the Bundesliga to 15 points by overcoming Schalke 4-0 at the Allianz Arena.
The Bavarians took the lead through David Alaba after 18 minutes, and a Bastian Schweinsteiger free kick made it 2-0 before the break. The Austrian grabbed his second soon after, before Mario Gomez wrapped up an emphatic win.
Neither side really started the game well. In fact, surprisingly, it was Schalke who had the first sight of goal. Michel Bastos got the ball on the left and took an early shot, but it flew into the side-netting.
Gradually, though, Bayern began to take command. First, Franck Ribery dribbled down to the byline, but rather than crossing, he shot from the narrowest of angles, and had Timo Hildebrand scrambling across his line.
Soon after, the Frenchman took another shot after an Arjen Robben corner was partially cleared by the S04 defence, but it was blocked fairly easily by a defender.
The Konigsblauen defence was standing surprisingly firm, but they should have been a goal behind just after the 15-minute mark, when Schweinsteiger bent in a lovely cross straight onto the head of Robben, who contrived to head wide when he should have scored.
That was as long as the resistance lasted, though. Less than a minute later, Ribery twisted and turned in the box, and was promptly brought down by Marco Hoger. Alaba stepped up to take the penalty, and sent Hildebrand the wrong way.
Schweinsteiger then had a chance to make it 2-0 with another free header, but squandered it. It was not long before he made amends.
Saed Kolasinac took down Robben just outside the box, Schweinsteiger claimed the resulting free kick ahead of the Dutchman and Toni Kroos, and bent it brilliantly into the bottom corner, via the inside of the post.
It could have been three at half-time after some wonderful combination play between Mario Gomez and Kroos set up Robben, but the former Real Madrid winger could not get the ball out of his feet and eventually drove wide.
Bayern started the second half in much the same way they finished the first. Robben drove down to the byline, pulled the ball back, and Gomez was able to touch it into the path of Alaba, who got his second of the game with a neat finish.
Seconds later, it could have been four when Robben and Gomez beat the offside trap, but rather than square it to his team-mate, the Dutchman elected to try to chip Hildebrand, and sent the ball onto the roof of the net.
The next time Robben was in a scoring position, though, he did play in the Germany international. Schweinsteiger played a masterful ball over the top to the 29-year-old, who squared it to Gomez, who finally got his goal.
With the result long secured, Jupp Heynckes took off Philipp Lahm, Schweinsteiger and Ribery, and his troops settled into a long spell of possession.
Gomez was denied a second by the offside flag after meeting the rebound of a parried shot from Robben, who had a late opportunity to net of his own, only to be let down by his first touch.
After just a few seconds of stoppage time, the referee blew up. Schalke slip to ninth, but Bayern march on.