Sterling converted Ilkay Gundogan’s cutback to score for only the second time this season and claim his first Champions League goal in more than a year.
With Phil Foden and Riyad Mahrez finishing off Joao Cancelo crosses from close range either side of the interval and Gabriel Jesus rolling a shot into the far corner with the final kick of the game, Pep Guardiola’s men were finding winning form after successive defeats by West Ham and Crystal Palace.
The only blot on a routine victory was a freak own goal by John Stones two minutes after City had taken the lead, Bernardo Silva slicing a clearance into the defender’s face and then the net.
City replace Paris St-Germain at the top of Group A after the French side drew 2-2 at RB Leipzig, and require a single point from their remaining two group games to seal a spot in the last 16 for the ninth successive season.
Guardiola was sufficiently confident of victory that he made all five substitutes long before the end, which included giving a home European debut to 19-year-old forward Cole Palmer, who brought an excellent late save out of former Liverpool keeper Simon Mignolet.
By the final whistle the City supporters’ minds were already turning to their Saturday lunchtime trip to Manchester United, where they have lost only twice in eight visits during Guardiola’s time in charge.
Grealish catches the eye
A lot has been made of the form of Kevin de Bruyne and Jack Grealish recently.
Grealish survived the weekend loss to Palace but De Bruyne did not. In the build-up to the game Guardiola defended the Belgian, saying it was impossible for a player to be at top form throughout a long career.
Nevertheless, after the rare experience of successive defeats, De Bruyne’s absence against his fellow countrymen – the visiting fans sang his name at one point – underlined how far off the pace he is.
Grealish is still getting used to his new surroundings. But the through ball he found Cancelo with as the Portuguese lifted a first-time effort over Mignolet and against the post, was worthy of his record £100m price tag.
Before Club Bruges could clear, Mignolet needed to save from Foden. As the visitors struggled to plug the gaps appearing in their defence, Cancelo crossed low and Foden tapped into an unguarded net.
There was a similarity in the way City got their second. Needing all their concentration to repel repeated attacking thrusts from Grealish, Foden and Silva, that required saves from Mignolet to deny Mahrez and Aymeric Laporte, the Bruges defenders switched off as an aimless ball was delivered across the six-yard area.
It meant no-one was picking up Mahrez as Cancelo floated his cross to the far post and the Algerian headed home from five yards completely unmarked.
Sterling replaced Mahrez as Guardiola began replacing half his team. The England man’s City future remains in doubt but his goal will not harm his confidence, even though Gundogan’s cross only required the simplest of finishes.
With Jesus scoring as well, City took their tally to nine in two games against their visitors.
At times, their passing was mesmerising, which will be a worry for Ole Gunnar Solskjaer given the difficulties Manchester United had in defending, not only in their record loss to Liverpool but also two Champions League meetings with Atalanta.
Club Bruges run out of ideas
Although they didn’t display it in conceding five goals on home soil a fortnight ago, the Belgian champions’ first two group results show they are a decent team and in the first half especially, City had some tricky moments.
Noa Lang, Clinton Mata and Charles de Ketelaere all threatened in forward positions and although their equaliser was fortunate, given Stones had no time to react as Silva sliced a clearance into his face, from where it bounced past a helpless Ederson, had it not been for the City keeper Hans Vanaken would have scored anyway.
Ultimately though, their defence could not cope once City started to move the ball quicker, as Guardiola was demanding from the touchline, although despite another setback they are still well placed to gain the consolation of a place in the Europa League play-offs.