Chelsea booked their place in the FA Cup final with a narrow 1-0 win over Manchester City on Saturday evening at Wembley.
Thomas Tuchel secured his first win over Pep Guardiola, ending their hopes of quadruple which sees Chelsea in the final next month.
Hakim Ziyech gave Chelsea a deserved lead in the 55th minute as he tapped in from close range.
Chelsea dominated the early stages at Wembley, taking 65 per cent of the ball in the opening 15 minutes.
Thomas Tuchel's side had the ball in the back of the net after six minutes as Hakim Ziyech converted Timo Werner's low through ball, but the flag was raised for a marginal offside.
City offered very little in the first-half and they had two half chances in the opening 45 minutes. Gabriel Jesus fired a tame shot from distance at Kepa Arrizabalaga which was comfortable for the Spaniard, while Fernandinho headed wide as half-time approached.
Fernandinho could count himself fortunate to still be on the pitch after he looked to stamp Mason Mount in the face, just missing him, after fouling the Blues midfielder but it wasn't checked and he avoided caution.
But it was Ben Chilwell who had Chelsea's best chance of the first half. Reece James' cross in the 19th minute fell to the full-back at the back post, but he could only shin his effort wide of the goal.
City suffered a blow three minutes into the second half as Kevin De Bruyne was forced off and replaced by Phil Foden due to an ankle problem.
Despite a bright start to the second 45 for City, Chelsea took the lead 10 minutes into the second-half. Werner was found in behind and he squared it to Ziyech who tapped into an empty net to put the Blues ahead at Wembley. An almost carbon copy of the goal to the one in the first half which was disallowed.
Ziyech should've doubled the lead four minutes later to give the Blues some breathing space. Ruben Dias made an error as he misjudged the flight of the ball and Ziyech was one-on-one with Zack Steffen, but he was denied from close range.
Pep Guardiola looked to change the tide of the cup tie, bringing Ilkay Gundogan on for Ferran Torres in the 64th minute.
Dias had a superb chance five minutes later to level the scores. Rodri headed a cross back across the box but the defender could only steer his header off target.
The ever-present Mason Mount was Chelsea's first change of the evening at Wembley as he walked off gingerly for Christian Pulisic.
N'Golo Kante produced another excellent display in the midfield and he cleared the City danger as they piled the pressure on which saw Werner counter with 14 minutes to play. He ran from inside his own half into the City box, but he was only able to hit a tame effort that was comfortable for Steffen.
Two minutes later and that was Werner's evening over. He was replaced by Kai Havertz. Emerson Palmieri also came on for the goalscorer, Ziyech.
City were only one shot away from equalising and Rodri was the next to strike an effort at goal with eight minutes to play, but Kepa got down well to save.
Thiago Silva was forced off with two minutes to play as his back injury got too much for him, despite him trying to carry on, and he was replaced by Kurt Zouma.
Pulisic had the ball in the back of the net in stoppage time with a smart finish past Steffen, but the offside flag denied him from ensuring the semi-final tie was complete.
And Chelsea held on at Wembley to seal their spot in the final where they will face either Leicester City or Southampton next month.
It's back-to-back finals for Chelsea and they will be hoping to go one step better this year after defeat to Arsenal last time out.
Tuchel's hopes of a trophy in his first season are getting closer, but the job isn't finished yet. It was a deserved win in the capital for Chelsea as they saw off the Premier League leaders.
The important games don't stop here. Next up is Brighton on Tuesday as the race for the top four intensifies with Champions League qualification still in their hands.
Job done for Chelsea at Wembley, but the cup final is where it matters. Tuchel will be pleased, but won't be content just yet.