Manchester City bounced back from the disappointment of the Champions League quarter-final exit to Real Madrid as Bernardo Silva's late goal sunk Chelsea at Wembley to seal a place in the FA Cup final.
The Portuguese midfielder turned in the winner at the far post from Kevin de Bruyne's cross six minutes from time.
Chelsea will regret missing a host of chances, nearly all falling to striker Nicolas Jackson, as they suffered another agonising Wembley experience after the extra-time defeat on penalties against Liverpool in the Carabao Cup final.