The Cherries found the net on either side of half-time through Antoine Semenyo and Evanilson, before Josko Gvardiol pulled one back for City.
This marked City’s second loss of the week, following their League Cup exit to Tottenham, as they struggled with several key injuries.
Manager Pep Guardiola noted before the game that many of his players were pushing through pain, and Bournemouth, fresh off a victory over Arsenal in their last home match, capitalized on the champions’ vulnerabilities.
Semenyo opened the scoring in the ninth minute, converting a cross from Milos Kerkez. After the hour, Evanilson doubled the lead with another delivery from Kerkez. City regained some hope in the 82nd minute as Gvardiol scored a powerful header from Ilkay Gundogan’s cross.
Erling Haaland nearly rescued a point in stoppage time but struck the post from close range.
As a result, City fell two points behind Liverpool, who rallied to beat Brighton 2-1 at Anfield.
The loss, City’s first in the league since December, was tempered slightly as Arsenal also suffered a defeat, 1-0 at Newcastle.