The decision comes following an impending departure for the long-serving Hugo Lloris and the exit of Harry Kane to Bayern Munich.
Son, who recently rejected a lucrative offer to join the Saudi Pro League, will be embarking on his ninth season at the North London club when Spurs begin their Premier League campaign away at Brentford on Sunday.
The 31-year-old has made 372 appearances for Tottenham since joining from Bayer Leverkusen in 2015 and has scored 145 goals with 80 assists registered.
Speaking to club channels, Son said: "It's such a big honour to captain this huge club.
"It was big surprise and a very proud moment. I've already said to the players that everyone should feel like a captain, on and off the pitch.
"It's a new season, a fresh start and I will give everything for this shirt and this armband."
Spurs manager Ange Postecoglou added: "Sonny has great leadership qualities, both on and off the pitch, and is the ideal choice to become our new captain.
"Everyone knows he is a world class player, and he has enormous respect from everyone in the dressing room.
"He transcends groups within the squad. That's not just because he's popular - it's because of what he has achieved in the game, both here and as captain of South Korea."
James Maddison and Christian Romero are the new vice captains for Spurs.