Magnus a fost un fiu nelegitim al regelui Olaf Haraldsson (mai târziu Sfântul Olaf), de concubina sa Engleză Alfhild, inițial sclav (sclav) al reginei lui Olaf Astrid Olofsdotter. Născut prematur, copilul a fost slab și incapabil să respire în primele minute și probabil că nu se aștepta să supraviețuiască. Olaf nu a fost prezent la nașterea copilului, iar skald-ul său islandez Sigvatr Inktsr Inktsarson a devenit nașul său. Într-un botez pripit, Sigvatr l-a numit pe Magnus după cel mai mare rege de care știa, de asemenea cel mai mare model al lui Olaf, Karla Magnus, sau Charlemagne. Împotriva șanselor, Magnus a continuat să crească puternic și sănătos și a devenit de o importanță vitală pentru Olaf ca singurul Său Fiu.
Olaf a fost detronat de regele danez Cnut cel Mare în 1028 și a plecat în exil împreună cu familia și curtea sa, inclusiv cu tânărul Magnus. Au călătorit peste munți și prin Eidskog în timpul iernii, au intrat în V Oktocrmland și au fost adăpostiți de un șef numit Sigtrygg în n Oktocrke. După câteva luni, au plecat n Unqustrke, și până în martie a mers spre est spre Sigtuna, în cazul în care regele suedez Anund Jacob le-a lăsat o navă. După aceea, partidul a navigat prin Marea Baltică și în Golful Finlandei, aterizând în cele din urmă în Rusia Kieveană ‘ (Gar secund). Au făcut prima oprire la Staraya Ladoga (Aldeigjuborg) pentru a organiza călătoria ulterioară. De acolo au călătorit spre sud până la Novgorod (Holmgard), unde Olaf a solicitat asistență de la Marele Prinț Iaroslav cel Înțelept. Cu toate acestea, Yaroslav nu a vrut să se implice direct în luptele de putere scandinave și a refuzat să ajute. După ceva timp, la începutul anului 1030, Olaf a aflat că contele de lade h Inktikkon Eiriksson, regentul lui Cnut în Norvegia, dispăruse pe mare și și-a adunat oamenii pentru a se întoarce rapid în Norvegia. Magnus a fost lăsat să fie încurajat de Yaroslav și soția sa Ingegerd.
la începutul anului 1031, o petrecere, inclusiv unchiul lui Magnus Harald Sigurdsson (mai târziu, de asemenea, să fie rege și apoi cunoscut sub numele de Harald Hardrada) a sosit pentru a raporta vestea morții tatălui său la Bătălia de la Stiklestad. În următorii câțiva ani, Magnus a fost educat în limba rusă veche și unele greacă și a fost instruit ca războinic. În 1030, Cnut și-a numit prima soție Okticlfgifu și fiul lor Svein ca regenți, dar norvegienii și-au găsit stăpânirea opresivă și, până la moartea lui Cnut în 1035, au fost alungați și Magnus a fost stabilit ca rege. Einar Thambarskelfir și Kalf Arnesson, care căutaseră amândoi să fie numiți regenți sub Cnut după moartea lui Olaf în 1030, plecaseră împreună la Rusia Kieveană’ pentru a-l readuce pe băiat să domnească ca rege al Norvegiei. După ce au primit aprobarea lui Ingegerd, s-au întors cu Magnus la Sigtuna la începutul anului 1035 și au primit sprijin de la regele suedez, fratele mamei vitrege a lui Magnus Astrid. Astrid a devenit imediat un susținător important al lui Magnus și o armată a fost adunată în Suedia, condusă de Einar și Kalf, pentru a-l plasa pe Magnus pe tronul norvegian.