The 29-year-old, whose World Cup campaign with South Korea came to an end earlier this week, has penned a two-year deal at St James' Park.
Ki has spent the past six years at Swansea, including a season-long spell with Newcastle's local rivals Sunderland in 2013-14, having previously made 66 Scottish Premiership appearances north of the border for Celtic.
Speaking to his new side's official website, Ki said: "I'm so pleased I can join the club. I was always pleasantly surprised when I came to St James' Park to play against Newcastle - there is a great atmosphere and the passion from the fans is a great support to the players.
"Everyone knows how big this club is so I'm really looking forward to playing with my teammates and for the fans."
Newcastle boss Rafael Benitez added: "I'm pleased to welcome Ki to the club. He is a player with lots of Premier League and international experience and it was an easy decision to bring him here.
"He is the captain of his country, a good character and he will be a good addition to the squad."
Ki missed South Korea's famous 2-0 win over Germany on Wednesday due to a calf injury.