In a game where Everton failed to threaten, Manchester City forced the hosts to fall deep and defend in the early stages of the game.
Manchester City broke the deadlock shortly after the hour mark when Phil Foden latched on to a loose ball and drilled his shot into the back of the net.
Everton briefly awoke from their stupor, taking the game to the Citizens. They were rewarded barely five minutes after falling behind. After some loose defending from the visitors, the ball fell kindly for full-back Lucas Digne, whose strike ricocheted off the post; Richarlison was on hand to guide the ball in.
Manchester City came out all guns blazing in the second half, as they looked to restore their lead.
Their relentless attack and constant probing finally paid off, as Riyad Mahrez curled in a beautifully-struck shot off the post and into the net. Bernardo Silva then drilled in a shot past Jordan Pickford to hand Manchester City a 3-1 victory.
With their 12th straight win in the league, Manchester City look like the team to beat in the Premier League this season.
Manchester City Player Ratings
He was largely undisturbed by Everton. However, there was nothing he could have done about the goal he conceded, as a lapse in concentration by the Manchester City defence allowed Richarlison to score the equaliser.
Kyle Walker 6.5/10
It was an assured outing for the Manchester City full-back. Kyle Walker looked confident marauding down the right flank relentlessly, supporting the attack and also performing his defensive duties.
He was occasionally over-ambitious, holding onto the ball for too long and losing possession or delivering a wayward pass. Otherwise, he was pretty impressive on the night.
Ruben Dias 7/10
Ruben Dias made his return to the Manchester City fold after missing the trip to Tottenham Hotspur because of an injury.
His partnership with Laporte might not have hit full gear yet, but he was still a menace for the Everton attack. Dias made a vital block to block Gylfi Sigurdsson's goal-bound effort.
Aymeric Laporte 6.5/10
The Manchester City defender appeared to be lacking in confidence, and rightly so, as he was making only his eighth league start this season after a lengthy injury layoff.
Aymeric Laporte was occasionally targeted by the Toffees, as he struggled to play the ball out from the back.
Joao Cancelo 7/10
It was another superb outing from Manchester City’s free-roaming defender. Predominantly a full-back, Joao Cancelo spent a large part of the game in attack, driving forward in midfield or strolling into the hosts' penalty area.
Cancelo had a brilliant go at goal blocked out by Pickford after he strode into the Everton area unmarked.
Manchester City’s towering midfielder was exquisite in the first half. Rodri made several vital interceptions to thwart the hosts. He also created a glorious chance for Gabriel Jesus in the first half, which the Brazilian failed to convert.
Rodri won five aerial duels and three ground duels; he also made three tackles and finished with an 88% passing accuracy.
Bernardo Silva 7.5/10
The Portuguese international was seemingly everywhere, as his energetic display caused major problems for Everton. Bernardo Silva's ability to take on a player and find pockets of space were key in Manchester City’s victory. He made the assist for Riyad Mahrez’s curler before firing a shot past Pickford into the bottom corner.
Phil Foden 7/10
The Manchester City youngster played in a deeper midfield role due to the absence of the injured Ilkay Gundogan. Even though he struggled to adapt to his new position, Phil Foden put in a solid shift. He broke the deadlock for Manchester City with an opportunistic strike in the 32nd minute.
He lost possession a few times when drifting forward from midfield, but otherwise had a routine impactful performance.
Riyad Mahrez 8.5/10
Riyad Mahrez had an outstanding outing at Goodison Park. He was a threat down the right flank of the Manchester City attack, troubling the Everton defensive duo of Lucas Digne and Ben Godfrey throughout.
The Everton defenders struggled to keep up with Mahrez's quick feet and incisive dribbling. Quite deservingly, the Algerian had his name on the scoresheet with a superb curler.
Raheem Sterling 5.5/10
It was a night to forget for the Manchester City captain. Raheem Sterling struggled to make an impact on the game. He tore at the Everton defence but lacked the end product. Sterling was replaced in the 80th minute by Kevin De Bruyne.
Gabriel Jesus 6/10
The Brazilian striker linked up well with his wingers and midfielders, as he often dropped deep to keep play ticking. Gabriel Jesus set up Manchester City's third goal of the night for Bernardo Silva with a simple pass into the path of Portuguese.
He should have grabbed a goal or two for himself, but failed to convert when presented with a glorious opportunity in each half.
Player ratings of Manchester City Substitutes:
Kevin De Bruyne 6/10
The Manchester City midfielder came on for the struggling Raheem Sterling in the 80th minute and performed laudably. The Belgian delivered several defence-splitting passes during his short stint off the bench.
The veteran Brazilian midfielder Fernandinho replaced Rodri in the 90th minute, but he had no telling contribution.