魏孝文帝于499年死后,他的后继者的生活日益腐朽,政治日益黑暗,阶级矛盾尖锐化,终于引发了各族人民大起义,主要有六镇起义、河北起义以及山东起义和关陇起义。六镇起义。六镇是沿长城一线的六个军镇,自西而东为沃野(今内蒙古五原东北)、怀朔(今固阳东北)、武川(今武川西土镇)、抚冥(今四子王镇东南)、柔玄(今兴和台基庙东北)、怀荒(今河北张北县境)。是北魏为防御柔然等漠北民族而设立的。镇将和镇兵都是鲜卑族人。另有汉族和其他民族的居民以及内地因犯罪而发配北边的人等。
这里的生活条件本来就很苦,镇兵和镇民又受镇将和各族豪酋的残酷剥削和奴役,生活更加痛苦。孝明帝正光四年(523年),柔然南侵,怀荒镇兵民缺少食粮,请求镇将开仓发粮,以便抵御柔然。镇将拒绝开仓,兵民异常愤怒,随即聚众捕杀镇将举行起义。次年春,沃野镇镇民、匈奴人破六韩拔陵聚众杀镇将起义,其他各族的兵、民纷起响应,一时北边都处于各族人民大起义的形势之下。
北魏朝廷屡派军队前往镇压,都遭到失败。525年春,北魏统治者勾结柔然主阿那瓌,联合镇压起义军。阿那瓌以10万进攻破六韩拔陵,破六韩拔陵战斗不利,率众渡过黄河南移,当时尚有众20万余人。不幸为北魏军所截击,起义军大败,破六韩拔陵被杀,起义失败。河北起义。在破六韩拔陵失败后,他的20万兵民都成为北魏官府的俘虏,被官府分散安置到定(今河北定县)、冀(今河北冀县)、瀛(今河北河间县)三州就食。当时的河北连年遭受水旱之灾,人民四处逃散,这些被俘的兵民前来,更增加了这一地区的困难。于是,这年八月,柔玄镇兵杜洛周率领被俘兵民在上谷(今河北省怀来县大古城)起义,北魏安州(今河北隆化)一带的戎兵2万多和汉族人民群起响应。
孝昌二年(526年)正月,大败北魏都督元谭于军都(今北京昌平西北)。四月,大败魏军于蓟城(今北京市)之北,杀都督李据。十一月攻破幽州(今北京市),捕获了北魏幽州刺史王延年及行台常景,声威大振。公元526年初,怀朔镇兵在鲜于修礼率领下,在定州左人城(今河北唐县西北)起义,六镇余众和汉族农民亦群起响应。北魏政府派大都督长孙稚和河间王元琛率兵镇压,起义军在五鹿(今河南濮阳南)大败长孙稚军,声势日盛。八月,叛徒元洪业杀害了鲜于修礼,部将葛荣又杀死元洪业,率领部众继续战斗。九月,葛荣在博野(今河北蠡县)大败北魏军,杀章武王元融。葛荣自称天子,国号齐。这时,杜洛周和葛荣两支起义军所向披靡,攻克了许多州郡,北魏将军、刺史、守令等被逮被杀很多。河北的广大的地区都在起义军的控制之下。
武泰元年二月(528年),怀朔镇将出身的葛荣怀着个人野心杀害了杜洛周,吞并了杜的部众,造成了起义军内部的严重不团结,削弱了起义军的战斗力。八月,葛荣率军围攻相州(今河北临漳西南),失败被俘,在洛阳就义。他的余部在韩楼的率领下,占据幽州(今北京市)。529年2月,韩楼战败被杀,河北起义至此失败。山东起义,在河北大起义期间,河北地区约有20多万汉族流民逃到了青州(今山东益都)一带,他们生活无着,饱受当地的官僚、地主的欺凌。孝庄帝建义元年六月(528年),邢杲领导河北流民在北海(今山东潍坊西南)起义,山东的贫苦农民纷纷响应,部众迅速发展到十余万人,邢杲自称汉王。邢杲是河间(今河北献县)大地主,曾任北魏幽州北平府主簿。在河北时,曾率部抗拒杜洛周、葛荣等部起义军,后随流民到青州。他起义后,曾攻占光州(今山东掖县)等地。
次年,为北魏上党王、大将军元天穆所败,邢杲投降,在洛阳被杀。起义失败。关陇起义。六镇起义不久,关陇地区也发生了各族人民大起义。这里的起义军主要有两支,一由高平镇(今宁夏固原)敕勒族酋长胡琛率领,一由原秦州城兵、羌人莫折大提率领。胡琛是响应破六韩拔陵起兵的,自称高平王,遣军进攻豳(今甘肃宁县)、夏(今内蒙古乌审旗南白城子)、北华(今陕西黄陵县西南)三州。他死后,部众由万俟丑奴率领。丑奴为鲜卑族人(亦说匈奴别部)。他攻占魏的东秦州(今甘肃天水),复围攻岐州(今陕西凤翔),自称天子。这时,葛荣部起义军已为尔朱荣击溃。尔朱荣命其从子尔朱天光率军到关陇。孝庄帝永安三年(530年),丑奴为天光击败被俘,在洛阳就义。
莫折大提起兵后,自称秦王。他派兵攻破高平镇,杀镇将赫连略和行台高元荣,不久病死。其子莫折念生继续率众战斗。念生自称天子,国号秦。在攻占岐州时,杀北魏都督元志和岐州刺史裴芬之等。527年正月,又攻下泾(今甘肃泾川北)、凉(今甘肃武威)等州,一度攻占潼关,威胁洛阳。这年九月,念生为叛徒杜粲所杀,杜粲又为他的部下骆超所杀,所部并入万俟丑奴的领导下。又继续战斗了3年,最后失败。北魏末年各地各族人民大起义是被剥削被压迫的鲜卑、汉族、匈奴、高车、氐、羌各族兵、民反对北魏鲜卑贵族和汉族大地主阶级的斗争。在这次起义的打击下,北魏政权分崩离析,各族豪酋和汉族地主也受到沉重打击。各族人民在共同的起义过程中,加速了各民族的融合过程。