Magnus király törvénytelen fia volt Olaf Haraldsson (később Szent Olaf), angol ágyasa Alfhild, eredetileg OLAF királynőjének rabszolgája (rabszolgája) Astrid Olofsdotter. Az idő előtt született gyermek gyenge volt, és nem tudott lélegezni az első néhány percben, és valószínűleg nem várta, hogy túlélje. Olaf nem volt jelen a gyermek születésekor, és Izlandi Skald Sigvatr adaptation lett a keresztapja. Sietve megkeresztelkedett, Sigvatr Magnust nevezte el a legnagyobb királyról, akiről ismert, Olaf legnagyobb példaképéről, Karla Magnusról vagy nagy Károlyról. Az esélyek ellenére Magnus erős és egészséges lett,és Olaf egyetlen fiaként létfontosságú lett.
Olafot nagy Cnut dán király trónfosztotta 1028-ban, és száműzetésbe vonult családjával és udvarával, beleértve az ifjú Magnust is. Télen átutaztak a hegyeken és eidskogon keresztül, beléptek V Inconkrmlandbe, és egy Sigtrygg nevű törzsfőnök kapott menedéket N Inconkrke-ben. Néhány hónap múlva elindultak N Inconkrke-ből, márciusra pedig kelet felé mentek Sigtuna felé, ahol Anund Jákob svéd király hajót hagyott nekik. A párt ezt követően a Balti-tengeren át a Finn-öbölbe hajózott, végül a kijevi Ruszban landolt (Gar ons). Először megálltak Staraya Ladoga (Aldeigjuborg), hogy megszervezzék a további utat. Innen dél felé utaztak Novgorod (Holmgard), ahol Olaf segítséget kért Bölcs Jaroszláv Nagyhercegtől. Jaroszláv azonban nem akart közvetlenül részt venni a skandináv hatalmi harcokban, és nem volt hajlandó segíteni. Egy idő után, 1030 elején Olaf megtudta, hogy Lade grófja, H Inconkon Eiriksson, Cnut norvégiai régense eltűnt a tengeren, és összegyűjtötte embereit, hogy gyorsan visszatérjenek Norvégiába. Magnust Jaroszlav és felesége, Ingegerd nevelte.
1031 elején egy párt, köztük Magnus nagybátyja, Harald Sigurdsson (később szintén király, majd Harald Hardrada néven ismert) megérkezett, hogy beszámoljon apja halálának híréről a Stiklestadi csata. A következő néhány évben Magnus tanult régi orosz és néhány görög és képzett, mint egy harcos. 1030-ban Cnut kinevezte első feleségét, Főhercegnőt és fiát, Sveint régensnek, de a norvégok elnyomónak találták uralmukat, és Cnut 1035-ben bekövetkezett haláláig kiűzték őket, Magnust pedig királlyá nyilvánították. Einar Thambarskelfir és Kalf Arnesson, akik Olaf 1030-ban bekövetkezett halála után mindketten Cnut kormányzói kinevezésére törekedtek, együtt mentek a kijevi Ruszba, hogy visszahozzák a fiút Norvégia királyává. Miután megkapták Ingegerd jóváhagyását, 1035 elején Magnusszal visszatértek Sigtunába, és támogatást kaptak a svéd királytól, Magnus mostohaanyjának, Astridnak a testvérétől. Astrid azonnal Magnus fontos támogatója lett, és egy sereg gyűlt össze Svédországban, Einar és Kalf vezetésével, hogy Magnust a norvég trónra helyezzék.