The Dutch left-back, who signed a five-year contract at Old Trafford in the summer of 2012, was surplus to requirements after the Red Devils secured the signature of Luke Shaw
The Russian club announced an agreement for the left-back on Tuesday and his switch has now officially gone through, with the Red Devils confirming the arrival of Luke Shaw in his position on Friday.
"I want to play in the Champions League and win trophies," Buttner told his new club's official website after the initial announcement of a deal.
"Dinamo have a very strong team and I believe we can fight for first place [in the Russian league] this season."
Shaw, meanwhile, became the most expensive teenager in football history on Friday as he sealed a £30 million move to Old Trafford.
Combined with Patrice Evra's contract extension, the move meant there was no room for Buttner after only two years at the club.
"Dinamo Moscow has great plans for the future and they want to challenge for the title," the defender's agent told Voetbal International earlier in June. "To stay at Manchester United was not an option.
"In the past two years, Louis van Gaal has ignored Buttner time after time [for the Netherlands national team] so what kind of view does he have when Van Gaal becomes his new club coach?"