A solitary goal from Raul was enough for Schalke to advance to the DFB Pokal final ahead of Bayern Munich.
On 15 minutes, an unmarked Raul headed in the only goal of the match, following a flicked header from centre half Benedikt Hoewedes. Bayern tried to respond, but ultimately did little to trouble Manuel Neuer, who was heckled and jeered by home fans over the 90 minutes.
Throughout the match, Bayern dominated the possession, but were rather slow and predictable in the build-up. Schalke were dangerous from set pieces, and moments before his goal, Raul had an off-balance volley cleared off the line by Mario Gomez. The Spaniard was given free space from the resulting corner, and took his chance with aplomb.
Hoewedes nearly doubled the visitors' advantage on 41 minutes following yet another corner, but this time Thomas Mueller headed off the goal line. Only once did die Koenigsblauen appear dangerous in open play, but after a good run and cut back, Jefferson Farfan struck a poor finish that was saved by Thomas Kraft.
Bayern, too, had trouble creating opportunities from free play, but the hosts also struggled from set pieces. Moments after the opener, Arjen Robben burned left back Hans Sarpei for pace before flashing a shot narrowly wide of the post. The Dutchman almost had an opportunity late in the half, but Hoewedes made a tremendous block to deny him.
The hosts were somewhat better in the second half, but having gone down a goal, there was little space to be made in the final third against a very well organised Schalke side. A pair of crosses came within inches of reaching their targets and Gomez had a penalty shout denied on 82 minutes, but it just wasn't Bayern's day. The increasingly desperate Bavarians threw everything (including substitute defender Daniel van Buyten) forward, but their best opportunity, a 10-yard blast from Franck Ribery, was brilliantly saved by Neuer.
The result sees Schalke advance to the final where they face 2. Bundesliga side Duisburg. Die Knappen are all but out of the running for a spot in European competition based on domestic results, but could qualify for the Europa League should they win the final.