The Swans made two changes to the team that lost at West Brom last time out, with Gylfi Sigurdsson returning after serving his three-match ban and Wayne Routledge back in Garry Monk's starting plans.
Lukasz Fabianski, Kyle Naughton, Federico Fernandez, Ashley Williams (capt), Neil Taylor, Jack Cork, Ki Sung-Yueng, Jonjo Shelvey (Jordi Amat, 90), Gylfi Sigurdsson (Jefferson Montero, 74), Wayne Routledge, Bafe Gomis.
Gerhard Tremmel, Angel Rangel, Jordi Amat, Leon Britton, Marvin Emnes, Nelson Oliveira.
David de Gea, Luke Shaw (Ashley Young, 58), Phil Jones, Marcos Rojo, Angel Di Maria (Juan Mata, 78), Wayne Rooney (capt), Daley Blind, Robin van Persie, Ander Herrera, Marouane Fellaini, Paddy McNair (Antonio Valencia, ht)
Victor Valdes, Chris Smalling, Adnan Januzaj, Radamel Falcao.
United came into this fixture on the back of just one defeat in 15 league games, but it was Swansea who were a whisker away from taking the lead after five minutes as Bafetimbi Gomis saw a powerful header cleared off the line by Ander Herrera.
Gomis came close again just six minutes later as Ki Sung-Yueng flicked on Gylfi Sigurdsson's corner at the near post before the Frenchman headed over from eight yards out.
In what was already proving to be an open contest in the early stages, United responded as Robin van Persie saw a fierce left-shot come back off the post from the tightest of angles, while Wayne Routledge shot straight at David de Gea from just inside the box.
However, the deadlock was broken on 28 minutes and it was the visitors who seized the initiative.
After good work down the left flank by Luke Shaw the ball found its way inside and after Wayne Rooney found Angel di Maria, the Argentinean international laid it into the path of Herrera who hit a low strike past Lukasz Fabianski.
But United's lead lasted just two minutes as the Swans drew level immediately.
After a fine cross from Jonjo Shelvey on the left, Ki Sung-Yueng stole a march on the visitors' defence to steer a left-foot shot past David de Gea.
Half-time: Swans 1 Manchester United 1
United made their first change at the break as Paddy McNair was replaced by Antonio Valencia.
And it was the scorer of the game's equaliser, Ki Sung-Yueng, who was involved in the action early on in the second half as he couldn't quite connect with a teasing cross from the left and David de Gea saved.
The visitors made their second substitution on 58 minutes as left-back Luke Shaw made way for Ashley Young, while Robin van Persie shot into the side netting on the hour mark as United began to press.
And they had a good chance to regain the lead midway through the second period as Angel di Maria's inswinging corner was met by Marcos Rojo six yards out, but he diverted his header over the crossbar.
But the pendulum sway in the Swans' favour with just over 15 minutes to play as they took the lead in style.
After Ki picked up Jonjo Shelvey 25 yards from goal, the former Liverpool man hit a rasping drive that deflected off Gomis which gave de Gea no chance as it flew into the net.
That goal then saw the home side make their first change of the afternoon as Gylfi Sigurdsson was replaced by Jefferson Montero.
Meanwhile, Angel di Maria made way for Juan Mata as United made their third and final change on 78 minutes.
Bafetimbi Gomis saw a low shot saved comfortably by de Gea as the home side looked for a third goal, while at the other end Manchester United failed to trouble Lukasz Fabianski in the Swans goal.
And after Jordi Amat replaced Shelvey in stoppage time, the hosts held firm to seal a historic double over Louis van Gaal's side.