北魏起源于鲜卑拓跋部。魏晋之际,鲜卑拓跋部还处于氏族部落联盟阶段。西晋建兴三年(315),部落首领拓跋猗卢因帮助西晋并州刺史刘琨与刘聪、石勒相对抗有功,被封为代公,进而封为代王。公元338年,拓跋什翼犍建立代国,改元建国,奴隶制部落联盟转变为封建国家形式。
前秦建元十二年(376),代国被前秦苻坚所灭。拓跋珪随母亲贺氏流亡,寄居在鲜卑独孤部刘库仁部落长大。
淝水之战后,前秦瓦解,以前被苻坚征讨过的各族纷纷重新建立独立政权。登国元年(386),拓跋珪纠集旧部召开部落大会,重建代国,拓跋珪任代王,年号为登国。之后,拓跋珪任用贤能,励精图治,休养生息,发展农业,拓跋氏开始复兴。同年,拓跋珪改国号为魏,自称魏王。
鲜卑族居住的地区原是匈奴故地。东汉时期,匈奴族大部分西迁和南移,鲜卑族就与没有迁移的匈奴人融合起来,建立起部落联盟关系。一部分匈奴部落被编入鲜卑部落联盟内,婚姻成为加强两族关系的纽带。
苻坚消灭代国时,匈奴铁弗部首领刘卫辰曾与苻坚关系密切,他逐渐和一个鲜卑部族首领刘库仁两部强大起来。这两个部族以黄河为界,分别占有拓跋氏的故地,而这两个部落首领与拓跋部也都有联姻关系。如今拓跋珪要复兴拓跋氏,首先就要与这两个部族争夺部落联盟的首领位置。
拓跋珪即位后不久,刘库仁之子刘显就派人护送拓跋什翼犍的幼子拓跋窟咄回到拓跋部,大有与拓跋珪争夺王位之意。鲜卑拓跋部原来就有幼子继位的传统,因此拓跋窟咄对拓跋珪构成了特别大的威胁。于是各部落开始动摇,拓跋珪被迫依附贺兰部,派人向慕容垂求助。慕容垂派慕容麟率军帮助拓跋珪打败了拓跋窟咄,拓跋窟咄投奔刘卫辰,却被其杀死,部众归拓跋珪所有。登国二年(387),拓跋珪在马邑弥泽大破刘显,刘显部落最后被慕容垂消灭。
后来刘卫辰派儿子刘直力鞮讨伐贺兰部,贺兰部不敌,便归附了拓跋珪。于是拓跋珪亲自率军救援贺兰部,大败刘直力鞮,接着又进攻柔然,斩敌无数。刘卫辰趁拓跋珪攻打柔然时,侵略北魏南境。没想到拓跋珪很快班师回朝,再次大破刘卫辰军队,最终刘卫辰和儿子刘直力鞮都被杀死。只有刘卫辰的幼子刘勃勃逃脱,改名赫连勃勃,依附姚兴,后来建立了大夏国。
拓跋珪消灭刘卫辰后,缴获了牛羊、良马数十万。有了这些物质基础,魏国开始逐渐繁荣起来。此后,阴山以南诸部望风而动,纷纷来向北魏投降。北魏至此国力大增,成为当时中国北方实力最强大的政权之一,为之后入主中原打好了基础。