The 23-year-old defender joins the Foals on a four-year contract for a reported transfer fee of €17 million plus add-ons.
The centre-back, who at Dortmund also played in holding midfield and at right-back, had also been linked with Hoffenheim and Tottenham Hotspur.
“Matthias Ginter approached us with his wish to leave the club because of the competition in our defense, and meet with his wish,” BVB sporting director Michael Zorc said on the club’s official website.
Having joined Dortmund from Freiburg as an unused member of Germany’s World Cup-winning squad in 2014, Ginter never really settled at the Westfalenstadion despite making a total of 103 appearances in all competitions.
Ginter has won 14 caps for Germany, and featured for Die Nationalmannschaft in their recent triumphant Confederations Cup campaign. He played the entirety of every match except for the first group stage game against Australia.
The defender also won the silver medal at the 2016 Rio Olympics with Germany.