Late goals from Ilkay Gundogan and Kevin De Bruyne carried Pep Guardiola and Manchester City through to the FA Cup semi-finals and kept alive their dreams of an unprecedented quadruple.
But it was a close-fought thing against a stubborn Everton side that only finally succumbed in the 84th minute to Gundogan’s 16th goal of the season.
With City pressing for the winner, a powerful shot by defender Aymeric Laporte was saved well by Everton’s stand-in keeper Joao Virginia who tipped the effort against the cross-bar.
The ball dropped kindly for the on-rushing Gundogan who stooped to head the ball over the line and clinch a 15th win – to go with a Champions League draw against Porto – in 16 cup ties for City this season.
For good measure, City sub Kevin De Bruyne struck in the 90th minute Wirth a clinical finish after racing clear onto a pass from fellow replacement Rodri.
Everton claimed Yerry Mina had been fouled by Riyad Mahrez in the build-up to that goal although, by that stage, such complaints were academic.
City dominated first half possession but Carlo Ancelotti had pieced together a masterful game-plan that stifled their normally free-flowing football.
In fact, the best chance of the opening period fell to the hosts from Lucas Digne’s 43rd minute corner which Mina flicked on brilliantly at the near-post, forcing Oleksandr Zinchenko into a head goalline clearance.
Earlier, City keeper Zack Steffen had also enjoyed a slice of luck when he raced to deal with Gylfi Sigurdsson’s through ball, kicked it against Dominic Calvert-Lewin and needed team mate Laporte to mop up the danger.
But City were frequently frustrated by an Everton defence that set about the task of protecting third-choice keeper Virginia in their goal.
The visitors were largely limited to efforts from distance, with a 25-yard hit from Raheem Sterling straight at the keeper their only on-target effort over the first 45 minutes.
City looked more energised after the restart, although a Richarlison half-volley flew just wide from Everton’s first attack.
And Everton’s 21-year-old Portuguese keeper was soon called into action, diving sharply to turn Sterling’s 12-yard shot around his post after he connected with a Fernandinho cross.
The influential Foden also connected menacingly with another long shot which flew just wide of the Everton goal as the Premier League leaders appeared to be edging closer a breakthrough.
The sight of Riyad Mahrez and De Bruyne coming off the City bench as substitutes was hardly ideal for the home side and, as the tie entered the last 10 minutes of normal time, Foden tested Virginia with yet another long-range attempt that forced a routine stop before the killer goal.