Engelsmannen kommer närmast från Dortmund och prislappen rapporteras ligga på omkring 85 miljoner euro, motsvarande knappt 865 miljoner kronor.
Kontraktet sträcker sig till 2026, med möjlighet till ytterligare ett år.
"Det är en dröm som går i uppfyllelse att få chansen spela för Manchester United och jag längtar efter att prestera i Premier League. Det här är en ung och spännande trupp och jag vet att vi, tillsammans, kan utvecklas till något speciellt för att nå den framgång som supportrarna förtjänar", säger 21-åringen i ett uttalande.
Sancho är fostrad hos lokalrivalen Manchester City, men lämnade för Dortmund 2017. Den offensive yttern gjorde 50 mål och 64 assist under fyra säsonger i den tyska storklubben.
"Han kommer att vara en vital del av min trupp i flera år framöver och vi ser fram emot att se honom blomstra. Hans mål- och assiststatistik talar för sig själv och han kommer också bidra med otrolig snabbhet, stil och kreativitet till laget", säger norske tränaren Ole Gunnar Solskjær.
Han var med i EM-truppen som tog England till final på Wembley nyligen. Sancho var en av tre spelare som missade straff i förlusten mot Italien.