Chelsea substitute Pedro headed in an extra-time winner to see off Leicester City and put the visitors into their second successive FA Cup semi-final.
An even tie was decided when Kasper Schmeichel’s rash decision to come off his line was punished by Pedro, who beat the Leicester keeper to N’Golo Kante’s diagonal cross.
Alvaro Morata had slid Chelsea ahead in the first half of normal time.
But Leicester’s Jamie Vardy smashed in from close range to force extra-time.
Chelsea have been drawn against Southampton – who reached the last four by beating Wigan earlier on Sunday – in the semi-finals.
Manchester United and Tottenham Hotspur, who won their respective quarter-finals on Saturday, will contest the other tie.
The matches will be played at Wembley on 21 and 22 April.