魏孝文帝于499年死后,他的后继者的生活日益腐朽,政治日益黑暗,阶级矛盾尖锐化,终于引发了各族人民大起义,主要有六镇起义、河北起义以及山东起义和关陇起义。
六镇起义。六镇是沿长城一线的六个军镇,自西而东为沃野(今内蒙古五原东北)、怀朔(今固阳东北)、武川(今武川西土镇)、抚冥(今四子王镇东南)、柔玄(今兴和台基庙东北)、怀荒(今河北张北县境)。是北魏为防御柔然等漠北民族而设立的。镇将和镇兵都是鲜卑族人。另有汉族和其他民族的居民以及内地因犯罪而发配北边的人等。
这里的生活条件本来就很苦,镇兵和镇民又受镇将和各族豪酋的残酷剥削和奴役,生活更加痛苦。孝明帝正光四年(523年),柔然南侵,怀荒镇兵民缺少食粮,请求镇将开仓发粮,以便抵御柔然。镇将拒绝开仓,兵民异常愤怒,随即聚众捕杀镇将举行起义。次年春,沃野镇镇民、匈奴人破六韩拔陵聚众杀镇将起义,其他各族的兵、民纷起响应,一时北边都处于各族人民大起义的形势之下。
北魏朝廷屡派军队前往镇压,都遭到失败。525年春,北魏统治者勾结柔然主阿那瓌,联合镇压起义军。阿那瓌以10万进攻破六韩拔陵,破六韩拔陵战斗不利,率众渡过黄河南移,当时尚有众20万余人。不幸为北魏军所截击,起义军大败,破六韩拔陵被杀,起义失败。
河北起义。在破六韩拔陵失败后,他的20万兵民都成为北魏官府的俘虏,被官府分散安置到定(今河北定县)、冀(今河北冀县)、瀛(今河北河间县)三州就食。当时的河北连年遭受水旱之灾,人民四处逃散,这些被俘的兵民前来,更增加了这一地区的困难。于是,这年八月,柔玄镇兵杜洛周率领被俘兵民在上谷(今河北省怀来县大古城)起义,北魏安州(今河北隆化)一带的戎兵2万多和汉族人民群起响应。
孝昌二年(526年)正月,大败北魏都督元谭于军都(今北京昌平西北)。四月,大败魏军于蓟城(今北京市)之北,杀都督李据。十一月攻破幽州(今北京市),捕获了北魏幽州刺史王延年及行台常景,声威大振。
公元526年初,怀朔镇兵在鲜于修礼率领下,在定州左人城(今河北唐县西北)起义,六镇余众和汉族农民亦群起响应。
北魏政府派大都督长孙稚和河间王元琛率兵镇压,起义军在五鹿(今河南濮阳南)大败长孙稚军,声势日盛。八月,叛徒元洪业杀害了鲜于修礼,部将葛荣又杀死元洪业,率领部众继续战斗。九月,葛荣在博野(今河北蠡县)大败北魏军,杀章武王元融。葛荣自称天子,国号齐。这时,杜洛周和葛荣两支起义军所向披靡,攻克了许多州郡,北魏将军、刺史、守令等被逮被杀很多。河北的广大的地区都在起义军的控制之下。
武泰元年二月(528年),怀朔镇将出身的葛荣怀着个人野心杀害了杜洛周,吞并了杜的部众,造成了起义军内部的严重不团结,削弱了起义军的战斗力。八月,葛荣率军围攻相州(今河北临漳西南),失败被俘,在洛阳就义。他的余部在韩楼的率领下,占据幽州(今北京市)。529年2月,韩楼战败被杀,河北起义至此失败。