Jermain Defoe scored a hat-trick as Sunderland won 4-2 at the Liberty Stadium in a pulsating game at the bottom of the Barclays Premier League.
In a lively first half, Sunderland went ahead after three minutes as Defoe grabbed his first before Swansea levelled through Gylfi Sigurdsson’s penalty.
Kyle Naughton was then harshly sent off for a challenge on Yann M’Vila, but the hosts went into the break ahead as Andre Ayew scored a fine solo goal.
But the second half belonged to Sunderland as they quickly equalised through Patrick van Aanholt’s deflected strike before Defoe netted twice to give the Wearsiders a vital win in the battle for survival.
The Swans changed the whole starting line-up for this fixture, as Alan Curtis opted to rest a large number of players who featured in the FA Cup defeat at Oxford.
Leon Britton made his 500th appearance for the Swans, and he was partnered by Ki Sung-Yueng and Gylfi Sigurdsson in midfield.
Lukasz Fabianski returned between the sticks, while Kyle Naughton started at right-back, with skipper Ashley Williams, Federico Fernandez and Neil Taylor making up the defence.
Going forward, Modou Barrow and Wayne Routledge offered width and support to Andre Ayew, who led the line.
Lukasz Fabianski, Kyle Naughton, Federico Fernandez, Ashley Williams (capt), Neil Taylor, Leon Britton (Angel Rangel, 42), Ki Sung-Yueng, Gylfi Sigurdsson, Modou Barrow, Wayne Routledge (Bafe Gomis, 75), Andre Ayew (Jack Cork, 90).
Kristoffer Nordfeldt, Jordi Amat, Jefferson Montero, Marvin Emnes.
Vito Mannone, Billy Jones, Wes Brown, John O'Shea (capt), Patrick Van Aanholt, Lee Cattermole (Jack Rodwell, 72), Yann M'Vila, Jeremain Lens (Duncan Watmore, 86), Adam Johnson, Fabio Borini (Danny Graham, 83), Jermain Defoe.
Jordan Pickford, Seb Coates, DeAndre Yedlin, Steven Fletcher.
The Swans came into this game looking for back-to-back home wins for the first time since August, but they made the worst possible start as Sunderland took the lead after just three minutes.
After a poor kick from Lukasz Fabianski fell at the feet of Adam Johnson, the winger cut inside before finding Fabio Borini and after the former Swans loanee saw his low shot saved by Fabianski, Jermain Defoe was on hand to tap home the rebound from close range.
Swansea had a good chance to level almost immediately as Wayne Routledge sent Andre Ayew in on goal, but the Ghanaian could only fire a half volley over the crossbar.
But it almost got worse for the home side on six minutes as Johnson somehow shot wide from 12 yards out after being unmarked inside the box.
However, the hosts grew into the game and managed to draw level midway through the first half as Ayew was adjudged to have been tripped inside the box by Wes Brown, with referee Graham Scott pointing straight to the spot.
And Gylfi Sigurdsson stepped up to coolly send Vito Mannone the wrong way and haul his side back on level terms.
The Swans then proceeded to up the tempo as a series of corners were won, while Modou Barrow - on a constant threat on the right flank - cut in and saw a fierce strike well held by Mannone.
But in the space of three first-half minutes, referee Graham Scott was again involved as the game turned on two key incidents.
First, with the ball there to be won, Swans defender Kyle Naughton was shown a straight red card for a challenge on Yann M'Vila - a decision which sparked a positive reaction in the home side as they then took the lead.
Following a long punt upfield from Fabianski, the ball found its way to Ayew and after he drove into the Sunderland box the forward drilled a rasping left-foot drive that flew past Mannone and into the far corner of the net.
Angel Rangel was then introduced in place of Leon Britton as the Swans regrouped following the red card, and they held firm until the break to go in ahead.
Half-time: Swans 2 Sunderland 1
Neither side made any changes at the break, but Sunderland - just like they did in the first half - made the perfect start as they equalised just minutes after the restart.
After patient build-up in the Swansea half, the ball found its way to Patrick van Aanholt on the left edge of the box and as the full-back cut inside his right-foot shot deflected off Federico Fernandez as it found the net via the left-hand post.
That goal sparked renewed life into the visitors as they started to dominate possession, with Jeremain Lens striking the post from a tight angle before Sunderland did regain the lead just past the hour mark.
After Jermain Defoe broke clear of the Swans defence, the former England man coolly slotted past Fabianski despite the striker looking offside once more on the replays.
Swansea thought they have levelled once more on 64 minutes when Angel Rangel had the ball in the net following a fumble from Mannone, but the defender was correctly adjudged to have been offside on this occasion.
The home side continued to press for a crucial equaliser and a chance fell at the feet of Neil Taylor as he drove an effort wide of the left-hand post, while Bafe Gomis was then introduced for the final stages as he replaced Wayne Routledge.
But it was Sunderland who found the net once more with five minutes to play as they sealed all three points in SA1.
After more good work down the left flank from van Aanholt, the defender drove into the box and crossed low for Defoe to tap home and complete his hat-trick.
And despite Bafe Gomis seeing a late effort saved by Mannone, that was how it stayed as Sunderland made the long trip back to the North East with a crucial three points.