Match ends, Manchester United 1, Swansea City 2.
Swansea won for the first time in their history at Old Trafford as Wilfried Bony's 90th minute winner knocked 10-man Manchester United out of the FA Cup.
The Ivory Coast striker, who had caused anxiety in the United defence for most of the game, headed in Wayne Routledge's cross to book a fourth-round spot against Birmingham, Bristol Rovers or Crawley Town.
The game looked like it was heading for a replay as the hosts held on following Fabio Da Silva's red card 10 minutes from the end after he had scythed down Jose Canas.
But Bony's strike ended a run of seven games without a win for the Swans, who had opened the scoring early on through Routledge before Javier Hernandez's equaliser.
It marked a second consecutive defeat for David Moyes's side, who also lost against Tottenham on New Year's Day. They have lost five times at home this season, including four of their last six at Old Trafford.
Moyes's gamble to pick a second-string team failed badly, but he was without the injured Robin van Persie and Wayne Rooney before kick off and his side paid for wasting several good chances in the first half.
There will also be concern for Rio Ferdinand, who left the field with a knee injury before being replaced by Fabio. The Brazilian lasted only four minutes before he was sent off.
United last won the FA Cup in 2004 but that wait must continue with the focus now on Tuesday's first leg of the Capital One Cup against Sunderland as Moyes attempts to salvage some silverware in his first season in charge.
The only certain thing about Swansea's fourth-round tie is that it is away from home as they go searching for their first FA Cup to add to their Capital One Cup success last year.
Bristol Rovers are yet to complete their second-round tie, with Birmingham lying in wait in the third round before they meet the Swans.
Although United made a positive start with Hernandez missing a great chance after a neat one-two between Danny Welbeck and Shinji Kagawa, the hosts went behind to a relatively simple goal.
Alejandro Pozuelo, who replaced the injured Pablo Hernandez, collected Bony's knock-back and his through ball found Routledge to lob over Anders Lindegaard after 12 minutes.
The lead only lasted four minutes, though, as Hernandez found his goal-scoring touch with a poked finish from close range after Alex Buttner's curling left-wing cross.
Moyes's side continued to create the better opportunities, but although they went close through Antonio Valencia and Buttner, Swansea weaved clever passing patterns in midfield behind the physical presence of Bony.
Ferdinand, who played his first game since 10 December, and fellow centre-back Jonny Evans had to be smart to block another Routledge effort as Swansea appeared after the break with more gusto. Pozuelo and Bony were also off-target.
With United appearing to lose their momentum, Moyes introduced Adnan Januzaj after the hour mark, but the youngster could not add any zip and matters were made worse when Fabio was sent off for a reckless challenge on Canas only four minutes after replacing the injured Ferdinand.
And the nightmare evening was complete when Bony's header sent the visiting fans into raptures and they will relish the trip back to Old Trafford in the Premier League on Saturday.
- 5FerdinandSubstituted forda Silvaat 76'minutesBooked at 80mins
- 25A ValenciaSubstituted forJanuzajat 63'minutes
- 1de Gea
- 22da Silva
- 19TiendalliBooked at 83mins
- 20De GuzmánSubstituted forVázquez Garcíaat 85'minutes
- 4Flores MorenoBooked at 82mins
- 2AmatBooked at 41mins
- 24Pozuelo Melero
- 8ShelveySubstituted forCañas Ruiz Herreraat 64'minutes
- 21Cañas Ruiz Herrera
- 26Vázquez García
- Mike Dean
- Shots on Target
Second Half ends, Manchester United 1, Swansea City 2.
Hand ball by Danny Welbeck (Manchester United).
Attempt missed. Álvaro (Swansea City) right footed shot from outside the box is close, but misses to the left. Assisted by Álex Pozuelo.
Attempt missed. Wilfried Bony (Swansea City) right footed shot from the right side of the box is close, but misses the top right corner. Assisted by Álex Pozuelo.
Goal! Manchester United 1, Swansea City 2. Wilfried Bony (Swansea City) header from the centre of the box to the top left corner. Assisted by Wayne Routledge with a cross.
Substitution, Swansea City. Álvaro replaces Jonathan De Guzmán.
Dwight Tiendalli (Swansea City) is shown the yellow card.
Chico (Swansea City) is shown the yellow card for a bad foul.
Javier Hernández (Manchester United) wins a free kick in the attacking half.
Foul by Chico (Swansea City).
Delay over. They are ready to continue.
Delay in match José Cañas (Swansea City) because of an injury.
Fabio (Manchester United) is shown the red card.
Foul by Fabio (Manchester United).
José Cañas (Swansea City) wins a free kick in the defensive half.
Delay over. They are ready to continue.
Delay in match Alexander Büttner (Manchester United) because of an injury.
Alexander Büttner (Manchester United) wins a free kick in the defensive half.
Foul by Jonathan De Guzmán (Swansea City).