The Moroccan tapped home from inside the box after Timo Werner had squared to him which ended up being the only goal of the game.
While Kevin De Bruyne was forced off injured putting him in doubt for City’s Carabao Cup final on April 25.
Sportsmail’s Gerry Cox watched over the action on Saturday evening and provided player ratings for each side.
Chelsea beat Manchester City in the FA Cup semi-final thanks to Hakim Ziyech’s goal
MAN CITY 4-3-3
Zack Steffen – 7
The American keeper kept his FA cup place and had little chance with Ziyech’s goal but did well to save from the Moroccan soon afterwards following an error from Dias.
Joao Cancelo – 6
Joao Cancelo was kept busy with Ben Chilwell looking to attack down his flank, and provided one dangerous cross before half-time. Caught out by Werner down Chelsea’s left when Ziyech scored.
Ruben Dias – 6
Arguably City’s player of the season but Portuguese centre-back looked far from unflappable and made one bad error that let in Ziyech for what should have been his second goal. Also missed a great chance to equalise when he headed over from close range.
Ruben Dias looked far from unflappable despite being one of City’s top players this season
Aymeric Laporte – 6
Aymeric Laporte Outpaced by Timo Werner before half-time but recovered well to block the German striker’s shot. Good tackle to stop James having a clear run on goal. 6
Benjamin Mendy – 6
One of seven changes, the French left-back had his work cut out keeping the rampaging Reece James in check. Not a great day at Wembley.
Kevin De Bruyne – 7
A huge blow for City when the Belgian limped off with an ankle injury early in the second half. Hit his stride halfway through the first half and had started to dictate the game.
A huge blow for City when De Bruyne limped off with an ankle injury early in the second half
Fernandinho – 6
Lucky to escape a booking for a late tackle on Mason Mount, but booked later. Headed a Sterling cross wide shortly before half time. Lost the midfield battle to Kante.
Rodrigo – 6
Steady and unspectacular on the left of City’s midfield, his deep position allowed De Bruyne to roam until the Belgian was injured. One tame shot saved late in the game.
Raheem Sterling – 6
Poor game from the England forward, who is struggling to find his best form. Gave the ball away too often, and shot high over the bar near the end.
Gabriel Jesus – 6
Recalled up front, he worked hard to find inroads but struggled for clear-cut chances. Curled a tame shot at Kepa in the first half and failed to make the most of a half-chance late in the game.
Ferran Torres – 5
The Spanish winger had scored three goals in his previous four games for club and country, but struggled to get into the game and was replaced by Ilkay Gundongan after 65 minutes.
Foden for De Bruyne 48 mins 7
Gundongan for Torres 64 mins 7
Ferran Torres struggled to get into the game and was later replaced by Ilkay Gundongan
Kepa Arrizabalaga – 7
Returning to the scene of his infamous defiance of Maurizio Sarri, in the Carabao Cup final v City two years ago. Had one easy save in the first half, and another late in the game.
Cesar Azpilicueta – 6
Gave the ball away more than his team-mates, but played his part in keeping City’s forwards at bay. Booked for fouling Foden late in the game.
Cesar Azpilicueta gave the ball away more than his team-mates, but kept City’s forwards at bay
Thiago Silva – 7
Went down injured early on but recovered to show his usual composure at the heart of Chelsea’s defence with some important blocks and tackles. Went off in the closing stages after injuring his back.
Antonio Rudiger – 7
Solid as a rock and a threat at set pieces. Injured in a clash of heads with Raheem Sterling around the hour mark but carried on after treatment.
Reece James – 8
Super start to the game attacking down Chelsea’s right and getting in dangerous crosses. Shot wide from long range following a corner. Booked for a tackle on Fernandinho.
Jorginho – 7
Excellent game in the middle alongside Kante, kept Chelsea ticking over without doing anything spectacular. A solid replacement for the injured Mateo Kovacic.
N’Golo Kante – 9
Outstanding in the heart of midfield, covering every blade of grass at Wembley and linking Chelsea’s play. Back to his very best since Thomas Tuchel took over. Man of the match.
N’Golo Kante was outstanding in midfield, covering every blade of grass for the Blues
Ben Chilwell – 7
Missed a supber chance to open the scoring in the 19th minute when a cross from James gave him a clear sight of goal, but he put his volley horribly wide. Attacked down the left but not as effective as James on the right.
Hakim Ziyech – 8
A rare start for the Moroccan and and he responded with a great display and the all-important goal ten minutes into the second half after linking with Werner. Denied a second soon after by a good save from Steffen. Subbed with 12 minutes to go.
Timo Werner – 6
Recalled as a central striker, and although he struggled again in front of goal, he set up Ziyech for his goal. One shot blocked early, and another weak effort saved after a 70 yard run. Replaced by Havertz for the final 12 minutes.
Mason Mount – 8
Chelesa’s most creative player again, set Werner away for Ziyech’s goal and nearly set up another soon afterwards. Replaced by Christian Pulisic for the final 20 minutes.
Mason Mount set Werner away for Ziyech’s goal and nearly set up another soon afterwards
Christian Pulisic for Mount 70 mins 6
Kai Havertz for Werner 78 mins 6
Emerson for Ziyech 78 mins 6
Kurt Zouma for Silva 86 mins 6
Ref: Mike Dean 8/10