Two goals from Sergio Aguero helped Manchester City to a comfortable win over Stoke and ensured they will be top of the Premier League at Christmas.
The Argentine scored at the back post, after Vincent Kompany's saved shot, and converted Samir Nasri's cross either side of Adam Johnson's 25-yard effort.
Stoke offered little, with Marc Wilson going closest but his effort went wide.
Manchester City remain two points clear, and will be Christmas leaders for the first time since 1929.
The result marks a fitting two-year anniversary since Roberto Mancini took the manager's post.
And it also ensures that Manchester City stay unbeaten at home in 2011, having won all but two of 29 games.
This encounter was a far cry from the host's last game against Arsenal on Sunday when they earned a thrilling 1-0 victory at the Etihad Stadium.
However, with another three points in the bag, Mancini will care little as his side retained their advantage over Manchester United, who won at Fulham.
Stoke came into the game on the back of a four-match winning streak in the league, yet from the outset they were set up to contain the home side.
It had little effect and, with the Blues dominating possession and Stoke seemingly content to retreat to their final third, the atmosphere inside the Etihad Stadium was flat to begin with.
Johnson woke the crowd when he cut in from the right and unleashed a left-footed shot that was deflected onto the bar by Wilson.
With Peter Crouch absent ill, Stoke named what appeared to be an attacking side with three strikers among their ranks, but they lined up in a defensive 4-5-1 formation with Cameron Jerome deployed on the left and Jonathan Walters behind lone frontman Kenwyne Jones.
AGUERO'S HAPPY AT HOME
- Sergio Agüero has scored more goals (9) at home than any other Premier League player this season
On a rare counter attack, Walters failed to get on top of a header when well-placed, but as Mancini's men began to probe further, Stoke had to work harder and harder to win the ball back.
The hosts were not exactly fluent, yet they took the lead from a short corner when Yaya Toure's cross was clipped goalwards by Kompany and, despite Thomas Sorensen's save, Aguero was on hand to tuck in at the back post.
There was a suggestion of offside to the strike, but there was no doubt about the second.
Stoke's chasing was beginning to take its toll, as illustrated by some wayward passing, and Johnson took advantage of a loose ball on the edge of the box to rifle past Sorensen.
He could have doubled his tally when his curling free-kick was diverted away by the Stoke keeper.
But any chances of Stoke getting a foothold in the contest were dismissed soon after the break when they again lost the ball in a dangerous area.
It was swept out to Samir Nasri on the right, and the Frenchman's cross found Aguero, who converted from eight yards for his 15th of the season.
Manchester City's leading scorer had opportunities to wrap up his second hat-trick of the season, with Johnson also going close late on.
The only real worry for Mancini's side was Micah Richards, who limped off just before the hour. Having suffered with a sore hamstring against Arsenal, it will be hoped that it is not too serious.
And with Stoke dealt with, the league leaders can now concentrate on trips to West Brom and Sunderland before hosting Liverpool on 3 January.
Stoke City boss Tony Pulis: "Manchester City are better than us, we'll take that one on the chin.
"It's one of best years from January to January in the club's history. We are striving to get better but it will take us longer than Manchester City because we haven't got £230m or £240m to spend."
- 25 Hart
- 02 Richards Booked (Savic - 59' )
- 04 Kompany
- 06 Lescott
- 22 Clichy
- 11 Johnson Booked
- 18 Barry (Milner - 83' )
- 19 Nasri
- 21 Silva (Balotelli - 68' )
- 42 Y Toure
- 16 Aguero
- 30 Pantilimon
- 05 Zabaleta
- 15 Savic
- 28 K Toure
- 07 Milner
- 34 De Jong
- 45 Balotelli
- 29 Sorensen
- 04 Huth
- 12 Wilson
- 20 Upson
- 39 Woodgate (Diao - 80' )
- 18 Whitehead
- 19 Walters
- 30 Shotton
- 40 Palacios
- 09 Jones (Pennant - 74' )
- 33 Jerome (Fuller - 68' Booked )
- 01 Begovic
- 15 Diao
- 16 Pennant
- 24 Delap
- 26 Etherington
- 32 Arismendi
- 10 Fuller
Live Text Commentary
Full Time The final whistle goes and the game is over.90:00 +3:14
Adam Johnson takes a shot. Thomas Sorensen makes a save.90:00 +1:45
James Milner takes a shot. Save by Thomas Sorensen.88:33
Free kick awarded for a foul by Adam Johnson on Jermaine Pennant. Free kick taken by Thomas Sorensen.88:33 Booking
Booking Adam Johnson shown a yellow card.82:05 Substitution
Substitution James Milner comes on in place of Gareth Barry.81:05
Inswinging corner taken by Jermaine Pennant from the left by-line, Close range header by Matthew Upson misses to the right of the goal.80:56
Jermaine Pennant sends in a cross, Stefan Savic makes a clearance.79:13
Gael Clichy takes the indirect free kick.79:13 Substitution
Substitution Salif Diao on for Jonathan Woodgate.79:13
Free kick awarded for a foul by Robert Huth on Sergio Aguero.77:33
Mario Balotelli takes a shot. Blocked by Robert Huth.77:16
The ball is crossed by Adam Johnson, clearance made by Robert Huth.74:20
Handball decision goes against Robert Huth. Free kick taken by Joe Hart.72:55
Matthew Upson restarts play with the free kick.72:55 Substitution
Substitution (Stoke) makes a substitution, with Jermaine Pennant coming on for Kenwyne Jones.72:55
Foul by Sergio Aguero on Matthew Upson, free kick awarded.70:45
Joleon Lescott takes the free kick.70:45 Booking
Booking Booking for Ricardo Fuller for unsporting behaviour.70:32
Ricardo Fuller gives away a free kick for an unfair challenge on Joleon Lescott.
Samir Nasri decides to take a short corner.68:47
Gareth Barry takes a shot. Save by Thomas Sorensen.67:32 Substitution
Substitution Cameron Jerome goes off and Ricardo Fuller comes on.67:32 Substitution
Substitution (Man City) makes a substitution, with Mario Balotelli coming on for David Silva.67:08
Effort from 35 yards by Vincent Kompany went wide right of the goal.62:06
Jonathan Walters challenges Gnegneri Toure Yaya unfairly and gives away a free kick. Samir Nasri restarts play with the free kick.60:44
Corner taken right-footed by Dean Whitehead, Marc Wilson takes a shot. Save by Joe Hart.58:39 Substitution
Substitution Micah Richards leaves the field to be replaced by Stefan Savic.58:12
Shot from close range by Sergio Aguero misses to the left of the target.55:31
A cross is delivered by Ryan Shotton, clearance made by Joleon Lescott.55:03
Sergio Aguero takes a shot. Save by Thomas Sorensen.53:10
Assist on the goal came from Samir Nasri.53:10 Goal scored
Goal! - Sergio Aguero - Man City 3 - 0 Stoke Sergio Aguero gets on the score sheet with a goal from inside the six-yard box to the bottom left corner of the goal. Man City 3-0 Stoke.52:00
Sergio Aguero takes a shot. Save made by Thomas Sorensen.50:53
Gael Clichy concedes a free kick for a foul on Ryan Shotton. Free kick crossed by Dean Whitehead, clearance made by Joleon Lescott.49:01
Sergio Aguero takes a shot. Save by Thomas Sorensen.47:30
The ball is swung over by Ryan Shotton, blocked by Gael Clichy.45:01
The second half begins.45:00 +2:12 Half time
Half Time The players leave the pitch at half time.44:00
Inswinging corner taken right-footed by Samir Nasri, clearance by Robert Huth.43:44
Gareth Barry delivers the ball, Jonathan Woodgate gets a block in.42:07
Short corner worked by Samir Nasri.40:57
Samir Nasri fouled by Marc Wilson, the ref awards a free kick. Adam Johnson has an effort direct from the free kick, save made by Thomas Sorensen.37:37
Unfair challenge on Kenwyne Jones by Joleon Lescott results in a free kick. Matthew Upson takes the indirect free kick.37:21
The ball is swung over by Sergio Aguero.35:34 Goal scored
Goal! - Adam Johnson - Man City 2 - 0 Stoke Adam Johnson finds the back of the net with a goal from outside the penalty area to the bottom left corner of the goal. Man City 2-0 Stoke.28:29
Assist on the goal came from Vincent Kompany.28:29 Goal scored
Goal! - Sergio Aguero - Man City 1 - 0 Stoke Sergio Aguero finds the net with a goal from inside the six-yard box to the bottom right corner of the goal. Man City 1-0 Stoke.28:17
Vincent Kompany takes a shot. Save by Thomas Sorensen.28:00
Samir Nasri takes a short corner.27:52
Samir Nasri crosses the ball, Robert Huth manages to make a clearance.27:03
Gael Clichy produces a cross, Dean Whitehead makes a clearance.26:22
The ball is swung over by Sergio Aguero, Matthew Upson makes a clearance.22:33
Free kick taken by Thomas Sorensen.22:33 Booking
Booking The referee books Micah Richards for unsporting behaviour.22:17
Foul by Micah Richards on Matthew Upson, free kick awarded.20:39
Gnegneri Toure Yaya takes a shot. Robert Huth gets a block in.19:43
Gael Clichy takes a shot. Blocked by Robert Huth.18:41
Handball by Ryan Shotton. Indirect free kick taken by Gnegneri Toure Yaya.18:03
Samir Nasri produces a right-footed shot from just outside the box that misses to the right of the goal.15:55
Samir Nasri challenges Jonathan Walters unfairly and gives away a free kick. Matthew Upson takes the free kick.14:31
Adam Johnson takes a shot.13:08
David Silva takes a shot. Robert Huth gets a block in.12:32
Sergio Aguero takes a shot. Blocked by Matthew Upson.11:00
Adam Johnson delivers a pass corner to short, Matthew Upson makes a clearance.8:25
Foul by Joleon Lescott on Kenwyne Jones, free kick awarded. Free kick taken by Matthew Upson.6:50
Jonathan Walters challenges Joleon Lescott unfairly and gives away a free kick. Indirect free kick taken by Joe Hart.2:56
Cameron Jerome crosses the ball, save by Joe Hart.1:46
Micah Richards is flagged offside by the assistant referee. Direct free kick taken by Thomas Sorensen.1:08
The ball is crossed by Samir Nasri, Jonathan Walters manages to make a clearance.0:00
The referee gets the game underway.
Live data and text provided by our data suppliers