Magnus Olavsson le Bon, fils de saint Olav, devint roi de Norvège en 1035, puis de Danemark en 1042. Il régna sur les deux pays jusqu'à sa mort en 1047.
Magnus1 (ainsi nommé d'après Charlemagne, Karlamagnús en vieux norrois) est né en 1024. Il est le fils du roi Olav Haraldsson (saint Olav) et de sa concubine Alvhild.
Lorsqu'Olav dut fuir devant Knut le Grand en 1028, Magnus suivit son père en Russie. Olav fut tué en 1030, à la bataille de Stiklestad, et la Norvège demeura sous contrôle danois.
Mais dès 1034, les chefs norvégiens, se révoltèrent contre Svein, le fils de Knut, et sa mère Alfiva. Bien qu'anciens adversaires d'Olav, deux d'entre eux, Einar Tambarskjelve et Kalv Arnesson, vinrent chercher Magnus à Novgorod. À son retour en Norvège, en 1035, année de la mort de Knut le Grand, Magnus fut reconnu comme roi, et Svein dut s'enfuir.
Magnus se vengea d'abord des ennemis de son père, avant de faire preuve de clémence, sur les conseils du scalde Sigvat Tordsson, l'auteur des Bersöglisvísur. Il est d'ailleurs connu sous le surnom de gode2, « le bon ».
En 1042, à la mort sans enfant de Hardeknut, il devint roi de Danemark, soit à la suite d'un pacte de succession avec le roi danois – le survivant régnerait à la fois sur la Norvège et le Danemark, soit par conquête – Magnus l'avait entreprise à la faveur du départ de Hardeknut pour l'Angleterre en 1040, pour y recueillir la couronne.
Comme roi de Danemark, Magnus s'illustra en protégeant le pays contre les Wendes, qu'il vainquit à la bataille de Lyrskog hede (1043).
Ses projets de conquête de l'Angleterre demeurèrent sans suite.
Au Danemark, il dut défendre son trône contre Svein Estridsson, neveu de Knut le Grand, qui, après avoir un temps été le jarl de Magnus, revendiqua la couronne pour lui-même. Magnus eut le dessus dans une série de batailles, même si Svein parvint finalement à s'implanter en Scanie.
Svein aurait pu compter sur le soutien de Harald Sigurdsson, oncle de Magnus, revenu en Norvège en 1045 avec l'intention d'y revendiquer le trône, après un séjour à Constantinople qui l'avait considérablement enrichi. Mais, en 1046, un accord fut trouvé : Magnus et Harald se partagèrent le pouvoir.
Magnus mourut à l'automne 1047, au cours d'une expédition au Danemark, sans doute de maladie, à l'âge de 23 ans. Il fut enterré dans la cathédrale de Nidaros.
Sans successeur, il laissa la couronne à Harald et à ses descendants.