The 28-year-old, who spent just one full season with the record German champions, has put pen to paper on a four-year deal through to 30 June 2022.
"I like the path Schalke are taking and want to be a part of it," said Rudy. "I'm really looking forward to playing in front of the fans and the atmosphere in the stadium."
Rudy turned out 35 times for Bayern, helping the club win the 2017/18 Bundesliga title as well as back-to-back Supercups. The former VfB Stuttgart and Hoffenheim man - a veteran of over 200 Bundesliga appearances - was also part of Germany's 2018 FIFA World Cup squad and 2017 FIFA Confederations Cup-winning ensemble. He can play across the midfield or at right-back.
"We're delighted Sebastian has chosen to join us here at Schalke," said head coach Domenico Tedesco. "We're getting a very intelligent and technically gifted player who has already proven himself at international level. We're sure his quality and experience will benefit our young squad and that he'll be able to hit the ground running."