Anthony Martial scored an injury time winner as Man Utd beat Everton 2-1 at Wembley to reach the FA Cup final.
Marouane Fellaini opened the scoring in the first half, but Everton rallied after the break and should have drawn level when Romelu Lukaku’s penalty was saved by David De Gea. They were on level terms soon enough, though, when United defender Chris Smalling scored an own goal.
However, with extra time looming and Everton looking strong, Martial struck with customary cool.
Both managers were desperate for success given their supposed vulnerable positions but it was van Gaal and not Roberto Martinez who was left smiling at the final whistle.
United skipper Wayne Rooney kept the score goalless in the opening stages as Everton broke forward following an early United corner, with Lukaku beating Timothy Fosu-Mensah all-too easily and breaking into the box, a heavy touch forcing him wide of David De Gea.
But the Belgium striker, without a goal since his quarter-final heroics against Chelsea, still managed to get a shot away, only to see a quickly back-tracking Rooney clear off the line.
United then wasted a great chance to open the scoring as Rooney’s pinpoint pass found Jesse Lingard free at the back post – but he could only shoot at Joel Robles.
With both teams set on attacking the perceived weakness of the opposition, Lukaku again burst in behind after getting the better of Smalling – only to take another heavy touch and shoot at De Gea from an impossibly tight angle.
United were enjoying the game’s first sustained period of pressure but it ended with Martial firing wildly over the bar having been played in by Lingard.
Marcus Rashford brought a low save out of Robles after Fellaini knocked a deep cross down to the teenager but United were soon ahead as Fellaini swept home Martial’s pull-back for a deserved lead.
Everton were jeered off by a large number of their fans at half-time and they were lucky not to fall further behind as Lingard fluffed his lines when played through at the end of a patient United build-up.
But they responded superbly after the interval and soon had the perfect chance to make United pay for their inability to turn dominance into a bigger lead.
A rare burst forward saw Aaron Lennon feed Ross Barkley, with Fosu-Mensah adjudged to bring down the England midfielder as referee Anthony Taylor had no hesitation in giving a penalty.
Lukaku stepped up but saw his spot-kick well saved by De Gea, who then easily held a Barkley free-kick moments later.
Van Gaal’s side finally woke from their second-half slumber as Fellaini came close with two close-range efforts, the second of which was blocked by the unwitting arm of Phil Jagielka.
Martinez introduced Gerard Deulofeu from the bench and he had a big hand in bringing Everton level with 15 minutes remaining as his cross from the left was turned past his own goalkeeper by Smalling.
Everton were now running the show and, after coasting past Michael Carrick, Deulofeu drew a smart stop out of De Gea, with Lukaku unable to turn home the rebound.
Lukaku was enduring a poor afternoon in front of goal and saw another chance come and go as compatriot Fellaini blocked his next effort.
With the game looking like going into 30 minutes of extra-time, substitute Ander Herrera capitalised on a lapse from Jagielka and fed Martial, who delighted the United supporters with a cool finish.