Sergio Aguero and Carlos Tevez both scored twice as Manchester City thumped Aston Villa to move top of the Premier League for the first time this season.
Villa frustrated City until David Silva broke the deadlock before half-time.
But the hosts took charge when Andreas Weimann was adjudged to have handled and Sergio Aguero scored from the spot.
Carlos Tevez added another penalty after Barry Bannan's handball, Aguero made it 4-0 with a deflected shot and Tevez tapped in Samir Nasri's cross.
Manchester United's shock defeat at Norwich later on Saturday meant City stayed at the summit. The size of Villa's defeat, together with Reading's victory over Everton, leaves them in the relegation zone.
Lambert criticises 'weak' officials
In the end, this win for the champions was every bit as convincing as the scoreline suggests but Villa boss Paul Lambert will argue his side were in the game until the 54th minute, when City scored their second goal from a debatable decision.
Referee Jon Moss pointed to the spot after his assistant Adrian Holmes spotted a near-post handball by Weimann from Silva's corner, but replays showed Weimann made no contact and none of City's players appealed for a penalty.
Once Aguero scored to give them breathing space, the champions did not look back - and could have had more goals if Scott Sinclair had been more ruthless after coming off the bench.
The result leaves Roberto Mancini's men - the only unbeaten side in the division - above their neighbours, having conceded the fewest league goals and with the best goal difference.
They did not have things all their own way against Villa, however, the visitors frustrating them before half-time and also creating some decent chances themselves.
City's Premier League fortress
Manchester City are now unbeaten in their last 36 home league games and have scored in each of their last 38 home league games. The last team to beat them at the Etihad Stadium were Everton, who won 2-1 on 20 December 2010, and the last team to stop City scoring on home turf were Birmingham City, in a 0-0 draw on 13 November in the same year.
First Joe Hart had to react quickly to keep out Vincent Kompany's attempted clearance from Matthew Lowton's cross.
And the City keeper, under renewed scrutiny following his unconvincing performance for England against Sweden on Wednesday, came to his side's rescue again when he dived to keep out Christian Benteke's bouncing header.
City, meanwhile, were seeing far more of the ball but were unable to break down Villa's determined defence.
Tevez and Yaya Toure were reduced to shooting from distance and Mancini might have been contemplating an early introduction of Edin Dzeko, who again started on the bench despite last week's heroics against Tottenham.
But there was no need for a super-sub on this occasion.
Strikers scoring pleases Mancini
City forced Brad Guzan into his first save of note just before the break, when he tipped Tevez's skidding effort round his post.
And Villa's resistance was broken from the resulting corner, with Kompany knocking the ball goalwards from Nasri's delivery and Silva darting in to fire over the line from close range for his first goal of the season.
More was to follow after half-time, but only after Holmes's decision, which Weimann continued to dispute as he was substituted and then again at the final whistle.
City's second penalty was more clear-cut, Bannan handling the ball while he was on the ground as Silva went round him in the area.
This time Tevez was given the responsibility from the spot and he sent Guzan the wrong way.
By now City were rampant and Villa's earlier organisation nowhere to be seen.
Aguero got his second when his shot took a touch off Enda Stevens and beat Guzan at his near post.
And Tevez made it 5-0 from close range after Nasri's ball reached him at the far post.
90:00+2:26 Outswinging corner taken right-footed by Marc Albrighton, clearance by Aleksandar Kolarov.
90:00+2:04 Free kick awarded for a foul by Vincent Kompany on Gabriel Agbonlahor. Brett Holman takes the free kick.
85:54 Scott Sinclair conjures a right-footed shot from inside the six-yard box that clears the bar.
84:27 Shot from just outside the box by Brett Holman goes over the target.
82:39 Substitution Jordan Bowery replaces Christian Benteke.
81:36 Christian Benteke is penalised for a handball. Joe Hart takes the free kick.
79:20 Foul by Gareth Barry on Christian Benteke, free kick awarded. Free kick crossed by Barry Bannan, Vincent Kompany manages to
make a clearance.
78:12 Effort on goal by Scott Sinclair from just inside the penalty area goes over the target.
77:47 Sisenando Maicon challenges Christian Benteke unfairly and gives away a free kick. Free kick taken by Ciaran Clark.
77:06 Yaya Toure takes a shot. Save by Bradley Guzan.
75:04 Free kick taken by Joe Hart.
75:04 Substitution Scott Sinclair joins the action as a substitute, replacing David Silva.
75:04 The offside flag is raised against Christian Benteke.
73:14 The assist for the goal came from Samir Nasri.
73:14 GOAL - Carlos Tevez:Man City 5 - 0 Aston Villa Carlos Tevez gets on the score sheet with a goal from close range to the bottom right corner of the goal. Man City 5-0 Aston
72:23 Substitution Aleksandar Kolarov on for Gael Clichy.
72:23 Shot on goal by Sisenando Maicon from just inside the area goes over the target.
70:18 Marc Albrighton takes a shot. Blocked by Gael Clichy. Outswinging corner taken right-footed by Marc Albrighton, Christian
Benteke takes a shot. Matija Nastasic gets a block in.
68:04 Substitution Edin Dzeko on for Sergio Aguero.
66:34 Assist on the goal came from Carlos Tevez.
66:34 GOAL - Sergio Aguero:Man City 4 - 0 Aston Villa Sergio Aguero finds the back of the net with a goal from inside the six-yard box to the bottom left corner of the goal. Man
City 4-0 Aston Villa.
65:54 Corner taken by Marc Albrighton, Matthew Lowton takes a shot. Save made by Joe Hart.
64:34 Assist on the goal came from David Silva.
64:34 GOAL - Carlos Tevez:Man City 3 - 0 Aston Villa Carlos Tevez scores a placed penalty. Man City 3-0 Aston Villa.
64:08 The referee penalises Barry Bannan for handball.
63:10 Sergio Aguero takes a shot. Ron Vlaar gets a block in. Inswinging corner taken by David Silva.
61:05 Bradley Guzan restarts play with the free kick. Gabriel Agbonlahor is ruled offside. Matija Nastasic takes the free kick.
61:05 Substitution Andreas Weimann leaves the field to be replaced by Brett Holman.
61:05 Substitution Marc Albrighton on for Stephen Ireland.
61:05 Free kick awarded for an unfair challenge on Matthew Lowton by Gareth Barry.
55:49 Gael Clichy fouled by Andreas Weimann, the ref awards a free kick. Matija Nastasic takes the free kick.
55:18 Andreas Weimann produces a right-footed shot from just outside the box that misses to the right of the net.
55:00 Andreas Weimann fouled by Gareth Barry, the ref awards a free kick. The free kick is delivered left-footed by Barry Bannan
from right wing, Joe Hart makes a save.
55:00 Booking Booking for Barry Bannan for dissent.
Correction - 53:19 Assist by David Silva.
53:19 Assist on the goal came from David Silva.
53:19 GOAL - Sergio Aguero:Man City 2 - 0 Aston Villa Sergio Aguero scores a placed penalty. Man City 2-0 Aston Villa.
Correction - 51:17 Corner taken by David Silva played to the near post, Handball by Andreas Weimann.
51:17 Inswinging corner taken left-footed by David Silva from the right by-line to the near post, The referee gives a against Ciaran
Clark for handball.
50:28 Shot from just outside the penalty box by Carlos Tevez misses to the left of the target.
48:20 Yaya Toure fouled by Stephen Ireland, the ref awards a free kick. Yaya Toure takes the direct free kick.
47:51 Unfair challenge on Enda Stevens by Sergio Aguero results in a free kick. Enda Stevens takes the free kick.
45:01 The referee blows his whistle to start the second half.
45:00+1:11 The whistle is blown to end the first half.
44:48 David Silva takes a shot. Save by Bradley Guzan. Corner taken right-footed by Samir Nasri, Header from deep inside the penalty
area by Matija Nastasic goes harmlessly over the crossbar.
44:24 The assist for the goal came from Carlos Tevez.
44:24 GOAL - David Silva:Man City 1 - 0 Aston Villa David Silva finds the back of the net with a goal from close range to the top left corner of the goal. Man City 1-0 Aston
Correction - 42:24 Carlos Tevez provided the assist for the goal.
Correction - 42:24 GOAL - David Silva:Man City 1 - 0 Aston Villa Goal scored by David Silva from close in to the top left corner of the goal. Man City 1-0 Aston Villa.
Correction - 41:51 Carlos Tevez takes a shot. Bradley Guzan makes a save. Corner taken by Samir Nasri, clearance made by Matthew Lowton.
41:51 Carlos Tevez takes a shot. Save made by Bradley Guzan. Inswinging corner taken right-footed by Samir Nasri, Matthew Lowton
manages to make a clearance.
39:14 Christian Benteke takes a shot. Blocked by Matija Nastasic.
38:50 Gabriel Agbonlahor takes a shot. Blocked by Matija Nastasic.
Correction - 38:40 Christian Benteke takes a shot. Matija Nastasic gets a block in.
38:02 The assistant referee flags for offside against Carlos Tevez. Bradley Guzan takes the indirect free kick.
36:34 Stephen Ireland fouled by Yaya Toure, the ref awards a free kick. Barry Bannan crosses the ball in from the free kick. The
assistant referee signals for offside against Christian Benteke. Joe Hart restarts play with the free kick.
33:40 Inswinging corner taken right-footed by Samir Nasri from the left by-line, Yaya Toure produces a headed effort from deep inside
the six-yard box which goes wide of the right-hand upright.
29:00 Samir Nasri takes a shot. Save by Bradley Guzan.
28:10 Effort on goal by Yaya Toure from outside the penalty box goes harmlessly over the bar.
26:55 Carlos Tevez produces a right-footed shot from just outside the area that goes wide left of the goal.
25:02 Matthew Lowton fouled by Sergio Aguero, the ref awards a free kick. Free kick taken by Bradley Guzan.
23:53 Gabriel Agbonlahor takes a shot. Blocked by Yaya Toure.
23:08 Free kick awarded for an unfair challenge on Gabriel Agbonlahor by Sisenando Maicon. Bradley Guzan takes the free kick.
20:13 Gael Clichy takes a shot. Save by Bradley Guzan. Corner taken by Samir Nasri, Close range header by Matija Nastasic goes over
19:00 Christian Benteke takes a shot. Save by Joe Hart. Inswinging corner taken left-footed by Barry Bannan, save made by Joe Hart.
17:38 Free kick awarded for a foul by Gabriel Agbonlahor on Sisenando Maicon. Sisenando Maicon takes the direct free kick.
16:00 David Silva takes a shot. Blocked by Barry Bannan. David Silva takes the inswinging corner, save by Bradley Guzan.
15:08 The assistant referee flags for offside against Christian Benteke. Joe Hart takes the free kick.
13:42 Stephen Ireland challenges Yaya Toure unfairly and gives away a free kick. Yaya Toure takes the free kick.
12:31 Christian Benteke takes a shot. Yaya Toure gets a block in.
5:29 Inswinging corner taken by Samir Nasri from the left by-line, Carlos Tevez produces a header from inside the six-yard box
that clears the bar.
4:08 Samir Nasri decides to take a short corner.
2:12 Sisenando Maicon produces a right-footed shot from deep inside the six-yard box which goes wide of the right-hand post.
0:00 The referee gets the match started.
Live text and data provided by The Press Association.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.