Southampton 0-1 Bristol City
Stephen Pearson's second-half strike ended Southampton's 25-match unbeaten home league record and saw Bristol City pull away from the relegation zone.
The Saints had the chance to move six points clear at the top of the Championship.
But Pearson converted 11 minutes from time to give the Robins their first victory in six matches.
City striker Nicky Maynard had a goal disallowed for offside, and David James pulled off several fine saves.
The victory for Derek McInnes' side sees them move three points clear of the bottom three.
It was a scrappy game at St Mary's with the best chances falling to Rickie Lambert in the first half. Steve De Ridder raced down the right wing and after pulling the ball back to Lambert, the striker failed to manoeuvre an effort on target.
Midfielder Jack Cork shot over from 25 yards before Morgan Schneiderlin tested former England goalkeeper David James, who had to tip the long-range strike over the crossbar.
From the resulting corner, Lambert rose high at the back post but could only head over.
Albert Adomah tested Saints' goalkeeper Kelvin Davis after stealing the ball off Adam Lallana but his shot was turned around the post.
Then City thought they had taken the lead on 53 minutes after Davis parried Kalifa Cisse's strike into the path of Maynard. The highly-rated striker converted the rebound neatly but was deemed to be in an offside position.
The Robins were close to going in front again through Pearson after 73 minutes but his weak effort was kept out by Davis.
Pearson did go one better five minutes later, tapping in after Davis had blocked efforts from Cole Skuse and Maynard.
Southampton had been unbeaten at St Mary's throughout 2011 going into this game, but it was a record that fell at the final hurdle.
Bristol City manager Derek McInnes:
"We have shown a lot of resolve and I am very pleased with each and every one of the players. They have all performed brilliantly tonight.
"We have now beaten the best side in the league twice this season and it amazes me how we can do that but struggle to get results elsewhere.
"We asked a lot of questions when we were beaten against Coventry in our last game but the players have bounced back and showed a lot of commitment and confidence to beat such a good side who I have such admiration for."
Southampton manager Nigel Adkins:
"It is a shame the amazing run has come to an end but we have to look onto the next game and hope we have another great run next year.
"I hope that we can get another string of results together at home and go unbeaten for the whole of 2012.
"It was a tough game for us as Bristol City defended very well and Derek has improved them immensely since he has come in as manager."