Match ends, Stoke City 0, Manchester City 2.
Stoke City 0-2 Manchester City
Captain Vincent Kompany says Manchester City have "a once in a lifetime opportunity" to win the title against rivals Manchester United after they restored their 16-point lead at the top of the table with victory at Stoke.
David Silva scored both goals at the relegation-threatened Potters to ensure the Blues can clinch the title at home to United on 7 April [17:30 GMT] if they beat Everton first.
"Everybody in the blue side of Manchester knows it's a once in a lifetime opportunity," said Kompany. "But steady, it won't be handed to us."
Manager Pep Guardiola took a different approach, acknowledging his side would be champions "sooner or later" but playing down the significance of sealing matters in a derby game.
"Now we are two or three games away from being champions," said Guardiola, adding it "doesn't matter when we win it".
Silva slotted in Raheem Sterling's cross to give Manchester City an early lead over Stoke before finishing off a slick passing move after the break.
Sterling later pounced on a loose touch following a controversial drop-ball and raced through towards goal but Badou Ndiaye recovered to get a crucial touch just as the England winger prepared to shoot.
Fernandinho and Leroy Sane both came close for Manchester City as they sought to extend their lead, while Stoke's Bruno Martins Indi also fired over the bar from close range.
The hosts had moments of hope in the first half - Ndiaye's scuffed effort bounced narrowly wide and Kyle Walker's deflection forced a save from Ederson.
But they remain in the relegation zone after failing to pick up a win in six matches and still one point adrift of safety.
Having thrashed Stoke 7-2 in October, this is the first time Manchester City have done the double over the Potters since the 1998-99 season, when both clubs were in the third tier.
No luck for Stoke in relegation fight
It was another disappointing evening for Stoke as they extended their run of games without a win to six - although most observers probably did not expect them to take any points from Guardiola's runaway leaders.
Stoke struggled to make an impact against the visitors and were on the back foot from the off thanks to Silva's early goal.
"Momentum is with us," Lambert said after last week's draw with Southampton but it was not in evidence here.
There were moments of good play - most notably Ndiaye's effort in the first half after a sweet nutmeg from Xherdan Shaqiri - but it ultimately looked the David and Goliath contest that respective league positions suggested.
The Potters have eight games remaining to find the points they need to extend their 10-year stay in the top flight but their upcoming fixtures are not favourable.
A trip to the Emirates to take on Arsenal looms and is followed by another tough game against Liverpool at Anfield next month.
Stoke also entertain Tottenham before ending the season against relegation rivals Crystal Palace and Swansea - two games which could prove pivotal to their survival.
The Potters have picked up just one win in 2018 but, with the bottom half of the table changing on a weekly basis, one game could make all the difference.
Title in touching distance for Manchester City
A routine victory for Manchester City brought another three points that only tighten their grip on the Premier League trophy.
Just two more wins are all that are needed and if City can overcome Everton at Goodison Park later this month, they could seal the title on derby day with a win over rivals Manchester United.
Guardiola's side bounced back from a surprise 2-1 second-leg defeat by Basel in the Champions League on Wednesday and with the league as good as wrapped up, they can focus all their energies on that competition.
Nothing but an away win looked in prospect once Silva gave them an early lead and their only disappointment will be that they could not convert further chances.
It was also a good opportunity for Gabriel Jesus and Sterling to regain their fitness following recent returns from injury.
All in all, it was a sound day at the office and Guardiola's men already had their bags packed for a trip to Abu Dhabi as they enjoy three weeks off.
'It doesn't matter where we win it' - What the managers said
Manchester City boss Pep Guardiola: "We are very close now. We have 81 points, which is a lot! We had a solid performance; we controlled the game and conceded no chances.
"David Silva controls the tempo. He has the skills no doubt about that but in the bad moments he is there to control the game and he is an aggressive competitor.
"To be champions is tough, it's complicated. Our club does not have a history of a lot of titles. As soon as possible will be better but it doesn't matter where we win it.
"I understand that it is important to our fans to win it against United but the target is the next game at Everton. After that, if we play like today sooner or later we will be champions."
Stoke manager Paul Lambert: "They are as good a team as I've seen in a long time. They have gone to another level. But credit to my team, they never capitulated.
"Defensively we got caught for the goals but they never carved us up like they have with other teams. This game was never going to define our season. We had odd moments but you have to take your chances.
"The way they play is terrific, you don't really see it until you get close up, it's so difficult to stop. I won't criticise my team, we stuck at it."
Jesus a lucky charm - the best of the stats
- Manchester City have won 81 points from their 30 Premier League games this season - three more than they earned in the entirety of 2016-17.
- The Blues have now scored 85 Premier League goals this season - only 11 teams have ever scored more in a completed Premier League campaign.
- David Silva has scored eight Premier League goals this season, his second highest tally in a single campaign in the competition (12 in 2014-15).
- Silva also bagged his second league double of the campaign - he had only scored three in his previous seven Premier League seasons combined.
- Only Jonas Lossl (50) has conceded more Premier League goals among goalkeepers than Stoke's Jack Butland (49) this season.
- Gabriel Jesus has played 31 Premier League games without ever being on the losing side (W26 D5). It's the fourth longest run without defeat from a Premier League debut, after Jens Lehmann (47), Arjen Robben and Didier Drogba (37 each).
Man of the match - David Silva (Manchester City)
Silva on how his form is so good despite the premature birth of his son: "I don't know! When I play football I forget about everything else, it is good for me to play.
"My private life is very hard for me but my son is fighting and getting better."
Stoke host Everton next Saturday (15:00 GMT) before enjoying a two-week break. Manchester City's next opponents are also Everton but not until Saturday, 31 March (17:30 GMT) at Goodison Park.
- 15Martins Indi
- 4AllenBooked at 73mins
- 20CameronSubstituted forSobhiat 88'minutes
- 27B Ndiaye
- 11Rodríguez RuizSubstituted forCrouchat 63'minutes
- 17De Bruyne
- 7SterlingSubstituted forBernardo Silvaat 85'minutes
- 33Gabriel JesusSubstituted forGündoganat 90+1'minutes
- 20Bernardo Silva
- 42Y Touré
- Jonathan Moss
- Shots on Target
Second Half ends, Stoke City 0, Manchester City 2.
Corner, Manchester City. Conceded by Joe Allen.
Attempt blocked. Konstantinos Stafylidis (Stoke City) left footed shot from outside the box is blocked. Assisted by Joe Allen.
Substitution, Manchester City. Ilkay Gündogan replaces Gabriel Jesus.
Foul by Gabriel Jesus (Manchester City).
Bruno Martins Indi (Stoke City) wins a free kick in the defensive half.
Substitution, Stoke City. Ramadan Sobhi replaces Geoff Cameron.
Offside, Manchester City. Kevin De Bruyne tries a through ball, but Gabriel Jesus is caught offside.
Corner, Stoke City. Conceded by Fernandinho.
Substitution, Manchester City. Bernardo Silva replaces Raheem Sterling.
Attempt missed. David Silva (Manchester City) right footed shot from the centre of the box misses to the right. Assisted by Kevin De Bruyne.
Attempt missed. Gabriel Jesus (Manchester City) right footed shot from the left side of the box misses to the left. Assisted by Kevin De Bruyne with a cross.
Corner, Manchester City. Conceded by Badou Ndiaye.
Delay over. They are ready to continue.
Delay in match Nicolás Otamendi (Manchester City) because of an injury.
Delay in match Konstantinos Stafylidis (Stoke City) because of an injury.
Corner, Manchester City. Conceded by Jack Butland.
Attempt saved. Leroy Sané (Manchester City) right footed shot from the left side of the box is saved in the top right corner. Assisted by David Silva.
Joe Allen (Stoke City) is shown the yellow card for a bad foul.
Attempt missed. Kyle Walker (Manchester City) right footed shot from the right side of the box misses to the right. Assisted by Kevin De Bruyne.
Foul by Vincent Kompany (Manchester City).
Peter Crouch (Stoke City) wins a free kick in the defensive half.
David Silva (Manchester City) wins a free kick on the left wing.
Foul by Moritz Bauer (Stoke City).
Attempt blocked. Leroy Sané (Manchester City) left footed shot from the left side of the box is blocked. Assisted by Nicolás Otamendi.
Offside, Stoke City. Konstantinos Stafylidis tries a through ball, but Peter Crouch is caught offside.
Foul by Gabriel Jesus (Manchester City).
Geoff Cameron (Stoke City) wins a free kick in the attacking half.
Delay over. They are ready to continue.
Delay in match Kurt Zouma (Stoke City) because of an injury.
Attempt missed. Bruno Martins Indi (Stoke City) left footed shot from the right side of the six yard box is just a bit too high. Assisted by Eric Maxim Choupo-Moting with a headed pass following a set piece situation.
Substitution, Stoke City. Peter Crouch replaces Jesé.
Foul by Nicolás Otamendi (Manchester City).
Jesé (Stoke City) wins a free kick on the left wing.
Corner, Manchester City. Conceded by Moritz Bauer.
Attempt missed. Leroy Sané (Manchester City) left footed shot from outside the box is close, but misses to the left. Assisted by Raheem Sterling following a corner.
Corner, Manchester City. Conceded by Eric Maxim Choupo-Moting.
Attempt blocked. Raheem Sterling (Manchester City) right footed shot from outside the box is blocked. Assisted by Leroy Sané.
Attempt saved. Oleksandr Zinchenko (Manchester City) left footed shot from outside the box is saved in the centre of the goal. Assisted by Kyle Walker.