Match ends, Manchester City 3, Wolverhampton Wanderers 0.
Gabriel Jesus scored twice as Manchester City eased past 10-man Wolves to cut Liverpool's lead at the top of the table to four points.
City did not manage a repeat of the scoring feats that had seen them hit 16 goals against Rotherham and Burton in their previous two games, but the outcome was rarely in doubt despite the relatively modest winning margin.
Jesus opened the scoring after 10 minutes when Leroy Sane ran on to a peach of a pass by Aymeric Laporte and squared for the Brazilian to slide home.
A tough task for Wolves got even harder when Willy Boly was dismissed nine minutes later, with the French defender shown a straight red card for a dangerous jumping challenge on Bernardo Silva.
- Guardiola tells players to forget about Liverpool's fixture list
- Football Daily podcast: Pep pressure, Wagner walks, unromantic O'Neill and casual Pellegrini
City initially failed to take advantage of their extra man and were given a scare when Diogo Jota narrowly failed to turn in Jonny's cross on a rare foray forward by the visitors.
That woke them from their slumbers and moments later they extended their lead from the spot.
Ryan Bennett sent Raheem Sterling tumbling as he burst into the box and Jesus stepped up to take his personal tally to seven in City's past three matches and put his side in complete control by half-time.
The only question left at the break was how many more City would score. Pep Guardiola's side had got five goals in the second half against Burton in the Carabao Cup and four against Rotherham in the FA Cup but had to settle for one this time.
Substitute Kevin de Bruyne whipped in a cross from a short corner routine, and Conor Coady could only deflect it into his own net to complete a miserable night for the visitors.
City just shy of record
City ended the night pushing for more goals but ended the evening one short of 100 in all competitions for the season.
It meant they missed out on equalling the record they set themselves in 2013-14 for being the fastest team to that landmark in the Premier League era but, other than their league position, that is just about the only thing they can be disappointed about at the moment.
They are the highest scorers in the Premier League with 59, and this was another message to Liverpool - who they beat here at the start of the year - that the title race is very much on.
Tuesday will mark a month since City last topped the table, and will also see Liverpool overhaul them as the team to have spent the longest at the summit this season - with the Reds leading the way with 75 days to City's 74.
And, on the evidence of this latest relentless attacking display, Guardiola's side have the firepower to keep the pressure on the leaders.
Wolves forced into damage limitation
The first points that City dropped this season came in an enthralling 1-1 draw at Molineux in August, and Nuno Espirito Santo has shown that was no fluke with his side's subsequent results against Chelsea, Manchester United, Tottenham and Liverpool.
On this occasion, however, Wolves were unable to lay a finger on City, especially once Boly had been dismissed - and they struggled to get a touch on the ball too.
They played only 271 passes to 870 by the defending champions, and very few of them were in the City half.
A fourth-minute header by the French defender that looped harmlessly wide was Wolves' sole effort at goal in the 90 minutes, and they only managed five touches in the City box.
Wolves continued to work hard, and restrict City's chances, but it was clear this was an exercise in damage limitation and they will have to wait a little longer for their first points of the new year.
Man of the match - Gabriel Jesus
'It is not easy even with one more player' - what they said
Manchester City manager Pep Guardiola, speaking to BBC Sport: "They defend deep with 10 men so it is not easy even with one more player. We have to be more aggressive to put the ball in the box. Kevin [de Bruyne] came on and crossed the ball 10 times.
"That is the way we have to play [in that situation]. If it is pass, pass, pass it is more difficult."
On Gabriel Jesus' form: "It is important for the striker [to score goals]. The first goal was an incredible pass from Aymeric Laporte and movement from Leroy."
Speaking to Match of the Day, Wolves manager Nuno Espirito Santo said: "Not only the red card changed the game, but the way we conceded with a long pass. The red card makes the task much harder.
"You know it is difficult to stop them but you try to avoid certain situations and it was a 30-yard pass so we must improve. But you do not make a game plan with one less man.
"You have to stay in the game and work yourself to the end, and my boys did that so we must look ahead and the next challenge is at home now."
Monday blues for Wolves - the stats
- Manchester City have lost just one of their last 15 Premier League games at the Etihad (W13 D1 L1), a 3-2 defeat against Crystal Palace in December.
- Wolves have lost eight of their last nine top-flight games played on Monday (W1), including all four such games in the Premier League.
- Man City are unbeaten in their last 35 Premier League games at the Etihad against promoted sides (W31 D4), since a 2-0 defeat against Reading back in February 2007.
- Manchester City have lost none of the 20 Premier League games in which Gabriel Jesus has scored (W19 D1), winning each of the last 17.
- Gabriel Jesus has scored 12 goals in his last eight appearances for Man City in all competitions at the Etihad Stadium.
- Since the start of last season, Man City's Leroy Sane has provided 23 Premier League assists, five more than any other player in that period.
- David Silva made his 267th Premier League appearance for Manchester City, overtaking Joe Hart (266) as City's all-time leading appearance maker in the competition.
- Willy Boly is the first Wolves player to be sent off in a Premier League game since Sebastien Bassong versus Arsenal in April 2012.
- Wolves failed to land a single shot on target in a Premier League game for the first time since May 2012 against Everton.
Wolves are at home to Leicester on Saturday (12:30 GMT KO). Manchester City travel to face Huddersfield Town on Sunday (13:30 GMT) in the first game since the Terriers parted company with manager David Wagner.
- 20Bernardo Silva
- 25FernandinhoBooked at 14mins
- 21SilvaSubstituted forDe Bruyneat 62'minutes
- 33Gabriel JesusSubstituted forAgüeroat 76'minutes
- 19SanéSubstituted forGündoganat 74'minutes
- 17De Bruyne
- 11Rui Patrício
- 15BolyBooked at 19mins
- 28João MoutinhoSubstituted forGibbs-Whiteat 72'minutes
- 19Castro Otto
- 9JiménezSubstituted forTraoréat 45'minutes
- 18JotaSubstituted forSaïssat 59'minutes
- 10Hélder Costa
- Craig Pawson
- Shots on Target
Second Half ends, Manchester City 3, Wolverhampton Wanderers 0.
Attempt blocked. Ilkay Gündogan (Manchester City) right footed shot from the left side of the box is blocked.
Attempt saved. Ilkay Gündogan (Manchester City) right footed shot from the centre of the box is saved in the centre of the goal. Assisted by Raheem Sterling.
Attempt blocked. Rúben Neves (Wolverhampton Wanderers) right footed shot from outside the box is blocked.
Corner, Wolverhampton Wanderers. Conceded by John Stones.
Attempt blocked. Adama Traoré (Wolverhampton Wanderers) left footed shot from the left side of the box is blocked. Assisted by Jonny.
Sergio Agüero (Manchester City) wins a free kick in the attacking half.
Foul by Romain Saïss (Wolverhampton Wanderers).
Corner, Manchester City. Conceded by Matt Doherty.
Foul by Danilo (Manchester City).
Adama Traoré (Wolverhampton Wanderers) wins a free kick in the defensive half.
Attempt missed. Danilo (Manchester City) right footed shot from outside the box is high and wide to the right. Assisted by Fernandinho.
Attempt missed. Fernandinho (Manchester City) right footed shot from outside the box is too high following a corner.
Corner, Manchester City. Conceded by Matt Doherty.
Attempt blocked. Sergio Agüero (Manchester City) right footed shot from the right side of the box is blocked. Assisted by Bernardo Silva.
Own Goal by Conor Coady, Wolverhampton Wanderers. Manchester City 3, Wolverhampton Wanderers 0.
Corner, Manchester City. Conceded by Rui Patrício.
Attempt saved. Kevin De Bruyne (Manchester City) right footed shot from the left side of the box is saved in the bottom left corner. Assisted by Ilkay Gündogan.
Substitution, Manchester City. Sergio Agüero replaces Gabriel Jesus.