The 35-year-old announced his decision two days after the end of the Major League Soccer season. His club, Chicago Fire, finished 17th.
“The time has now come,” he said. “To the fans, you made this unbelievable time possible for me.”
In total, he gained 121 caps for Germany between 2004 and 2016.
Schweinsteiger was allowed to join Chicago Fire on a free transfer in March 2017 and scored on his debut. Fire finished third in his first season to reach the play-offs but have struggled since.
‘He put Chicago Fire on world map’
“Basti has meant so much to our club,” said Chicago Fire chairman Joe Mansueto. “It was an absolute pleasure to watch him play.
“His soccer IQ is so elite, you can see that he’s three steps ahead at every turn. He’s a leader, a great team-mate and a generational player who put Chicago Fire on the world map. I’d like to say, on behalf of the club: Danke, Basti.”