Southampton 1 Man City 0
Che Adams ended his long wait for a Premier League goal as he hit a stunning long-range effort to give Southampton victory over Manchester City.
The 23-year-old, signed from Birmingham last summer, brilliantly lobbed Ederson to give Saints a 1-0 lead they battled valiantly to maintain.
Adams, named in a Premier League starting XI for the first time in 2020, may grab the headlines for his fine strike but Southampton goalkeeper Alex McCarthy also played a huge part in the win.
Criticised for his error in the recent defeat to Arsenal, manager Ralph Hasenhuttl has kept faith in McCarthy - who made a string of good saves.
For City, this was a huge comedown following their 4-0 thrashing of newly-crowned champions Liverpool on Thursday.
Pep Guardiola made six changes from that game, dropping Kevin De Bruyne to the bench as the City boss slipped to a third consecutive away league defeat for the first time in his managerial career.
Southampton would take the lead as Adams finally broke his Premier League duck on his 25th appearance in the competition - and he did it in style.
Zinchenko was caught in possession as Stuart Armstrong stole the ball off his toe, with Adams taking advantage of Ederson being well off his line to lob the City goalkeeper from fully 35 yards.
Saints have largely been relying on Danny Ings for their goals but the striker made his mark at the other end of the pitch, clearing a dangerous cross off the line as opposing players flooded in.
McCarthy then made two important stops as City pushed for the equaliser, turning a Raheem Sterling strike away before keeping out a David Silva header either side of Fernandinho hitting the base of the post with a low drive.
Riyad Mahrez was the next to be kept at bay by McCarthy, who used his legs to keep out a shot from an acute angle.
Aymeric Laporte could not quite reach a Gabriel Jesus flick-on as the second half started as the first had concluded - City almost permanently inside the final third and the hosts looking to keep them at bay.
McCarthy was once again called upon to prevent the equaliser, this time turning away a close-range Jesus header and then keeping out David Silva's shot.
The last meaningful kick of the game was a De Bruyne free-kick on the edge of box, but he could only slam it into the wall as Southampton secured back to back wins.
SOUTHAMPTON: McCarthy, Walker-Peters, Stephens, Bednarek, Bertrand, Armstrong (Smallbone, 90 mins), Ward-Prowse, Romeu, Redmond, Ings, Adams (Long, 70 mins). Unused subs: Djenepo, Obafemi, Gunn, Vokins, Danso, Jankewitz, Ferry.
Man City: Ederson, Joao Cancelo, Eric Garcia, Laporte, Zinchenko, Bernardo Silva, Fernandinho, Silva, Mahrez (De Bruyne, 59 mins), Gabriel Jesus, Sterling (Foden, 59 mins). Unused subs: Bravo, Stones, Gundogan, Rodri, Otamendi, Doyle, Harwood-Bellis.
Referee: Andre Marriner (West Midlands)
Man of the match: Jack Stephens
Match rating: 7/10