Jonjo Shelvey’s 83rd minute wonder strike gave Swansea all three points in a game Southampton dominated at St Mary’s.
Saints – who ended the match with ten men after the late dismissal of Ryan Bertrand – will come away from the contest probably unsure of how they came away without at least a point to show for their efforts in an encounter that they were in control of for large periods.
A lack of cutting edge cost Ronald Koeman’s team dear, though it wasn’t for the lack of trying as the visitors carried out a smash and grab exercise thanks to Shelvey’s late strike which came as a bolt from the blue.
Saints substitute Sadio Mané went closest thereafter to finding a leveller, but was twice denied by clearances off the line from Ashley Williams, leaving the hosts to taste defeat in the league for the first time in the new year.
Swansea meanwhile celebrated their first win since Boxing Day and their first success in Southampton for 62 years.
Maya Yoshida returned from Asia Cup duty and came back into the starting eleven in place of fellow defender Florin Gardos, who dropped to the bench.
Sadio Mané was also back from representing Senegal at the African Cup of Nations, and was named among the substitutes.
Saints were dominant from the initial exchanges, with much of the half’s action played out in front of the Northam stand which the hosts were attacking in the opening 45 minutes.
Perhaps the best of those opportunities arrived in the seventh minute when Dušan Tadić and Nathaniel Clyne combined well down the right flank where the latter crossed low for James Ward-Prowse, whose controlled shot was flicked away by the legs of Lukasz Fabianski from close range.
Swansea were slow in coming forward by their normal high standards and suffered a further blow when forward Marvin Emnes went off injured after quarter of an hour, and he was replaced by Modou Barrow.
That had come shortly after the visitors’ best chance when Jonjo Shelvey played the ball into Bafetimbi Gomis on the edge of the area, and the striker hit a rising shot just wide of the left post.
From then on in the half though, Saints were in control of possession, without creating too many clear chances, though Harrison Reed fired wide as the hosts began to dominate down the flanks.
Both full-backs Nathaniel Clyne and Ryan Bertrand each got further forward with the latter hooking over from Eljero Elia’s knockdown inside the area, with Elia also on hand to assist for Tadić inside the middle of the box, where the ball was knocked wide under pressure from Swansea defender Neil Taylor.
Taylor went into the book before the end of the half for a foul on Elia, who was continuing to make a good impression on the game, but despite Saints’ best efforts the game remained scoreless heading into half-time.
Both teams kept it tight at the start of the new half, though Saints remained the more likely looking team to threaten.
But, as the game opened out just before the hour mark, Swansea almost snatched the lead when Jonjo Shelvey struck the base of the post with a low strike which came on the back of a counter-attack forward.
Saints quickly retaliated when Ward-Prowse headed an effort down at the far post which was held by Fabianski, and then the Swansea goalkeeper was called upon again to deny the same man from the edge of the area.
That led to the introduction of Sadio Mané for Reed on 63 minutes as the hosts pressed on in search of a breakthrough goal.
Mané certainly added an extra spring into the home team’s step moving forward, with the Swansea rearguard being tested by the pace of the Senegalese, who alongside Elia were each pushing the visiting defence to defend deeper.
On 78 Mané tested Fabianski again, and after another missed opportunity, Swansea punished the hosts five minutes later when Shelvey collected the ball on the edge of the area and smashed a stunning drive into the top corner past Fraser Forster for 0-1.
Saints tried to hit back immediately, with Steven Davis seeing a strike blocked inside the area, and then they were denied twice in quick succession when Mané twice beat Fabianski, only for skipper Ashley Williams to be on hand to clear from the line on each occasion.
The hosts were dealt a hammer blow when Ryan Bertrand was sent off late on for a challenge on Barrow prior to four minutes of additional time for stoppages incurred by Barrow’s need of treatment.
As Saints gave one last push, they still couldn’t find a way through with Pellè blazing over and a queue of red and white shirts tried to force their way through late on, but frustratingly to no avail.
Southampton team: Fraser Forster, Nathaniel Clyne, Jose Fonte (c), Maya Yoshida, Ryan Bertrand, Harrison Reed (Sadio Mané 63), Steven Davis, James Ward-Prowse, Dušan Tadić, Eljero Elia (Ryan Seager 89), Graziano Pellè
Unused substitutes: Kelvin Davis, Florin Gardos, Matt Targett, Dominic Gape
Booked: Yoshida (64)
Sent off: Bertrand (89)
Swansea City team: Lukasz Fabianski, Neil Taylor, Ashley Williams (c), Federico Fernandez, Kyle Naughton (Angel Rangel 81), Jonjo Shelvey, Tom Carroll, Jay Fulton, Nathan Dyer, Marvin Emnes (Modou Barrow 15) (Jordi Amat 90), Bafetimbi Gomis
Unused substitutes: Gerhard Tremmel, Nelson Oliveira, Dwight Tiendalli, Matt Grimes
Booked: Taylor (44)
Goal: Shelvey (83)
Referee: Michael Oliver
Attendance: 30,943 (including 1,458 away)