Yevhen Konoplyanka and Naldo struck as Schalke beat rivals Borussia Dortmund 2-0 in a hard-fought Ruhr derby to boost their Champions League qualification hopes.
Schalke battled back from 4-0 down away to Dortmund to claim a sensational draw earlier in the campaign but no such dramatics were needed at the Veltins-Arena on Sunday.
Konoplyanka struck early in the second half with his third Bundesliga goal of the season, the winger beating Roman Burki with a powerful strike after great work from full-back Daniel Caligiuri.
Schalke goalkeeper Ralf Fahrmann was almost untested in the home goal, bar a simple save from a Marco Reus free-kick, as Domenico Tedesco's men successfully stifled their rivals.
The visitors rarely looked like launching a comeback - Naldo doubling Schalke's lead late on with a spectacular curling free-kick - and Dortmund are now winless in five away games in all competitions with problems mounting for coach Peter Stoger as striker Michy Batshuayi was stretchered off with an apparent ankle injury.
Tedesco continues to work wonders in his first season in the Bundesliga, with Schalke moving four points clear in second place, albeit 20 behind champions Bayern Munich.
Dortmund made a flying start in the reverse fixture but Schalke began on top this time around, Alessandro Schopf forcing a fine save from Burki, who got down well to his right.
Amine Harit and Guido Burgstaller fired efforts wide as the hosts continued to dominate the opening exchanges, with the derby played at a typically ferocious pace.
A dipping Reus free-kick called Fahrmann into action in the 24th minute, but the Schalke captain made a comfortable save high to his right.
An unmarked Thilo Kehrer should have hit the target with a header from a terrific Caligiuri set-piece delivery, but, after Konoplyanka whipped a shot narrowly wide of the far post after cutting in off the left wing, the half ended goalless.
Konoplyanka's effort proved a sighter as he hammered Schalke in front in the 50th minute.
Dortmund captain Marcel Schmelzer lost possession to Caligiuri, who raided through midfield and fed the pass to Konoplyanka on the left side of the penalty area, a thumped left-footed finish giving Burki no chance.
A tame 66th-minute Reus effort caused no problems for Fahrmann as Schalke - without Matija Nastasic due to an injury that could rule the Serbia centre-back out of the World Cup - held firm.
Reus blasted wide on the volley as Dortmund, beaten 6-0 at Bayern in their last away game, desperately sought an equaliser, with Stoger turning to teenager Jadon Sancho in the closing stages.
Batshuayi sent a diving header wide from Lukasz Piszczek's right-wing cross with 10 minutes to play, but the hosts claimed bragging rights and took a step towards returning to Europe's top table in stunning fashion.
A short free-kick was swiftly worked wide of the wall for defender Naldo to hammer an unstoppable drive that curled dramatically away from the helpless goalkeeper Burki, a strike worthy of settling any derby clash.
And the day got even worse for Dortmund in stoppage time as Batshuayi left the field on a stretcher after seemingly damaging his ankle in a challenge from Benjamin Stambouli.
Key Opta stats:
- Schalke have won the derby against Borussia Dortmund for the first time since September 2014.
- Yevhen Konoplyanka scored the 2,500th goal for Schalke in the Bundesliga.
- Naldo scored his sixth goal against Borussia Dortmund - more than against any other team in the Bundesliga.