Jamie Cureton scored two first-half goals as Colchester United secured a rare league double against Southampton at St Mary's.
Cureton silenced the 18,736 crowd - Southampton's lowest of the season - in the fourth minute when he turned in a left-wing cross from Chris Iwelumo from six yards out.
Saints' loan midfielder Danny Guthrie then tried his luck wit a 40-yard lob in the 19th minute which had to be tipped over the crossbar by the back-pedalling Dean Gerken.
Gareth Bale headed the resulting corner against the post, but in the 26th minute Marek Saganowski scored his fourth goal in seven starts from ten yards out following good work from Nathan Dyer down the right and Andrew Surman.
But within a minute of conceding the equaliser, Cureton deflated Southampton's hopes of a play-off place with a brilliant second goal to restore his side's lead.
Bale failed to stop Richard Garcia's cross from the right and Cureton was allowed time and space to volley an acrobatic winner.
Southampton striker Bradley Wright-Phillips missed the target with two efforts either side of the interval and substitute Grzegorz Rasiak fired two long-range strikes straight at Gerken after replacing his fellow Polish striker Saganowski.
Saints dominated the latter stages before Bartosz Bialkowski saved well at his near post to deny Colchester a deflected third through Garcia.
Surman struck the outside of a post before Gerken twice denied Leon Best in injury time.
Best was handed his first appearance for the first team in more than a year and he was denied from point-blank range before Gerken produced an excellent stop at his near post.
Southampton will unveil a bronze statue of legend Ted Bates on Saturday night, but this result has dampened a ceremony that will honour the man who first brought top-flight football to the club in the 1960s.
Saints manager George Burley will still have hopes of a place in the top six, but after a third defeat in four games, he faces a battle to restore some confidence in his team.