Having crashed out of the UCL on penalties to Real Madrid in midweek, City had no time to dwell on that defeat, with the defence of their FA Cup title on the line here.
Their opponents Chelsea came into the fixture high on confidence, following a 6-0 Premier League thrashing of Everton, which translated into a fairly open start at Wembley.
Typically, City dominated possession during the first half and they carved out the first clear-cut chance as Kevin De Bruyne slipped in Phil Foden, who rounded Đorđe Petrović but was forced too far wide to direct a shot on goal.
Soon after, Julián Álvarez found himself in a promising position after displaying close control in the box, yet his effort was inadvertently blocked by an offside De Bruyne.
As the half progressed, Chelsea began to manufacture presentable opportunities of their own, with Nicolas Jackson seeing his cut-back cleared by Nathan Aké and John Stones sliding in to deny Noni Madueke from close range.
Cole Palmer had already scored against his former club earlier this season, and he came close to breaking the deadlock shortly before HT, ghosting past Rodri before testing Stefan Ortega with a low curling strike.
The HT interval did little to affect the tempo of the contest as both sides continued to create openings.
Heavily involved but struggling to find a clinical touch, Jackson saw two shots denied in quick succession before Foden forced a save from Petrović at the other end.
Determined to break the deadlock, Jackson then found himself in a race with Kyle Walker but he came off second best with penalty appeals ignored.
However, playing in an FA Cup semi-final for a record sixth consecutive season, City’s experience paid dividends, snatching a late goal to break Chelsea hearts when Petrović toed De Buyne’s pass into the path of Silva, who forced the ball in from close range.
A first defeat since the League Cup final in February is a particularly painful one for Mauricio Pochettino’s Chelsea, who not only miss out on silverware but must now rely on league performance to secure a return to European competition next season.
Meanwhile, City’s unbeaten H2H run now stands at nine games (W7, D2) as they reach back-to-back finals where Pep Guardiola’s side will face either Manchester United or Coventry City.
Flashscore Man of the Match: Phil Foden (Manchester City)