The winger, who joins from Boruissa Dortmund, completed his medical on Tuesday after leaving the Three Lions camp following their defeat in the final of Euro 2020.
“I’ll always be grateful to Dortmund for giving me the opportunity to play first team football, although I always knew that I would return to England one day,” Sancho said.
“The chance to join Manchester United is a dream come true and I just cannot wait to perform in the Premier League.
“This is a young and exciting squad and I know, together, we can develop into something special to bring the success that the fans deserve.”
United manager Ole Gunnar Solskjaer has been a long-term admirer of Sancho and failed to sign the winger last summer.
Sancho, who joined Dortmund from United’s rivals Manchester City as a youth player and went on to score 50 goals in 137 appearances in Germany, has now gone on holiday with his new team-mate Marcus Rashford.
The pair have both recently spoken out against the racist abuse they received on social media having both missed penalties during the final.
Dortmund are working to replace Sancho this summer and are interested in PSV Eindhoven duo Noni Madueke and Donyell Malen. England Under-21 international Madueke has a number of admirers in the Premier League though PSV are reluctant to sell.