The 32-year-old midfielder has found game time severely limited at United since Jose Mourinho's arrival at Old Trafford last summer, making just four appearances in cup competitions this season.
According to the Chicago Tribune, the former Germany international has signed a one-year deal with Veljko Paunovic's side with a weekly salary of £70,000 that makes him one of the highest-paid players in the league.
General manager Nelson Rodriguez said: "We're adding someone who has won at every level, including the very highest levels, and has done so in a way that is consistent with our values.
"We as a club will now be forced to hold ourselves to a higher standard, an accountability level. Previously, I think we could satisfy ourselves with what is known domestically. Now we need to rise to a standard that is set more internationally."
Schweinsteiger added: "Throughout my career, I've always sought opportunities where I hoped to make a positive impact and to help make something great. My move to Chicago Fire is no different.
"Through my conversations with Nelson and Pauno, I'm convinced by the club's vision and philosophy and I want to help them with this project."
Schweinsteiger joined United in 2015 from boyhood club Bayern Munich, where he won eight Bundesliga titles, seven German Cups and the Champions League.