Gerard Deulofeu’s injury-time winner saw Watford complete a stunning 3-2 comeback win over Wolves to reach their first FA Cup final in 35 years.
The Spanish substitute slotted past John Ruddy in the 104th minute to set up a Wembley final against Manchester City on May 18.
Wolves had held a 2-0 lead until the 79th minute when Deulofeu chipped in a curling shot to spark hope for the Hornets whose captain Troy Deeney then won and scored a 94th-minute penalty.
Two set-pieces had put Wolves in control, with Matt Doherty’s header from a corner (36) and Raul Jimenez’s chest and finish from a free-kick (62) giving them a comfortable lead, but they struggled to regain control of the game after Deulofeu’s first.
Watford: Gomes (7), Femenia (7), Mariappa (6), Cathcart (6), Holebas (7), Hughes (6), Doucoure (7), Capoue (7), Pereyra (6), Gray (7), Deeney (7).
Subs: Deulofeu (9), Masina (7), Janmaat (6), Sema (n/a).
Wolves: Ruddy (6), Saiss (7), Coady (7), Boly (6), Doherty (7), Dendoncker (5), Neves (6), Moutinho (6), Jonny (7), Jimenez (7), Jota (7).
Subs: Bennett (5), Cavaleiro (5), Traore (6), Vinagre (6)
Man of the match: Gerard Deulofeu
When Leander Dendoncker then fouled Deeney inside the box in the final minute of added time, the captain smashed the ball beyond Ruddy to send the semi-final into extra-time.
Both sides looked leggy in the additional half-hour, but a moment of quality between Andre Gray and Deulofeu proved enough to finally seal victory, with the latter finishing superbly once his strike partner had played him through from a Deeney flick-on.
On a day which would play a major part in one of these sides’ recent histories, neither looked willing to blink first in a cagey opening 20 minutes.
Gray should have done better when his acrobatic flick landed the wrong side of the post from Deeney’s deep cross, but a capacity crowd were left waiting until the 32nd minute for the first shot on target of the afternoon.
Dendoncker’s speculative drive looked to be heading over but was helped on its way by Heurelho Gomes, who was made to pay for that cautiousness from the resulting corner. Doherty escaped the attention of Abdoulaye Doucoure a little too long and was unmarked to head Diego Jota’s cross in to break the deadlock.
That briefly knocked the stuffing out of Watford, who could have fallen further behind when Jota fired wide after beating two defenders, but on the stroke of half-time, they should have been level when Gray’s goalbound effort from a Deeney flick cannoned off Coady’s head and behind.
Wolves re-emerged looking comfortable with their one-goal lead. After nearly adding to it inside 30 seconds of the restart, Jimenez got his goal soon after, bringing down Jota’s long ball on his chest before firing past Gomes and unveiling in his celebration a mask given to him by WWE wrestler Sin Cara.
With nothing more to lose, Watford threw the kitchen sink at their opposition for the final half-hour but Ruddy remained untroubled until Deulofeu, who earlier could have been sent off for appearing to put his head into Joao Moutinho’s face, curled in from a difficult angle on the left of the area.
Watford continued to press but it looked like they would need another special moment to conjure up an equaliser – and in the last minute of four added on, they got it. Dendoncker stuck a leg into Deeney’s path and after several seconds’ thought, a perfectly placed Michael Oliver pointed to the spot.
Deeney made no mistake despite the incredible pressure on him, firing high to Ruddy’s right to send the tie into extra-time.
Heurelho Gomes kept up his record of playing in every cup game for Watford this season, with Gerard Deulofeu also benched for Andre Gray.
Wolves made three changes from their win over Manchester United on Tuesday, dropping Ryan Bennett and Ruben Vinagre to the bench for Romain Saiss and Jonny.
Both sides struggled to maintain the intensity of a manic second half until Gray and Deulofeu exchanged passes on the break, and the latter held off Ryan Bennett to put Watford ahead for the first time.
Substitute Ivan Cavaleiro had Wolves’ only real chance during the additional half-hour when beating Adrian Mariappa for pace and rounding Gomes. But with the goal at his mercy from a tight angle, the ball rebounded on his heel and away – and Watford held on to record one of the most remarkable Wembley comebacks in living memory.
Man of the match – Gerard Deulofeu
The up-and-down career of Deulofeu has rarely hit a higher note than it did at Wembley, and without his moment of magic to start Watford’s late comeback, there is little chance it would have got off the ground.
The winning goal was meat and drink compared to that strike and while it is unfortunate the substitute had to return to the bench after injuring himself towards the end of extra-time, it summed up his short afternoon that he was hurt tracking back to cut out Ruben Vinagre’s run.