大业五年(609年),长白山(今山东章丘东北)地区突然涌现出"狂寇"数万人,他们啸聚山林,劫掠州县,虽尚未形成有组织的反抗力量,却已如惊雷般预示着大隋王朝统治危机的来临。次年,北方的雁门(今山西代县)与帝国的东都洛阳先后爆发暴动——前者因边地戍卒不堪苛役而哗变,后者则是城中贫民因饥荒而聚众抢粮。这两起事件虽在隋军强力镇压下迅速平息,却如同两声警钟,敲响了全国性农民起义的前奏。究其根源,黄河南北一带在隋炀帝一系列浩大工程中遭受的祸害最为深重:营建东都洛阳,每月役使民夫二百万人,死者十之四五;修缮长城,死者过半;开凿大运河,更是白骨累累,千里运河几乎是用民夫的尸骨铺就。
大业七年(611年),炀帝为炫耀国威、恢复汉四郡旧疆,悍然下令进攻高句丽。一道诏书,全国征兵百余万人向涿郡(今北京)集结,旌旗绵延千里,鼓噪之声震天动地。与此同时,又强征上百万民夫转运粮械,舟车相继,昼夜不绝。车牛往者不返,士卒死亡过半,田园荒芜,耕稼失时,昔日富庶的华北平原竟成鬼域。百姓卖儿鬻女、拆屋掘坟以充军需,父母妻子相送于道,哭声震野。在这般绝境之下,农民纷纷揭竿而起,以血肉之躯对抗暴政。
大业七年(611年)冬,邹平(今山东邹平北)民王薄率先聚集贫苦农民,据长白山起义。这位出身贫寒的私盐贩子自称"知世郎",寓意能预知世事、洞察兴亡。他登高疾呼,作《毋向辽东浪死歌》以发动民众,歌词慷慨悲壮:"长白山前知世郎,纯著红罗锦背裆。长槊侵天半,轮刀耀日光。上山吃獐鹿,下山吃牛羊。忽闻官军至,提刀向前荡。譬如辽东死,斩头何所伤!"歌声所至,逃避征役的广大农民如百川归海,纷纷加入王薄起义军。随后,起义烽火迅速蔓延:平原(今山东陵县)刘霸道聚众数万,依托河泊港汊,号"阿舅贼";鄃县(今山东夏津)张金称率众起义,轻捷勇猛,来去如风;漳南(今河北故城东)孙安祖与窦建德联手起兵,窦建德后因孙安祖被杀,率二百人逃入高鸡泊,招集亡命,势力渐盛;渤海(今山东滨州市阳信西南)高士达聚众于清河,自称东海公;韦城(今河南滑县东南)翟让在瓦岗寨举事,日后成为撼动隋室根基的主力;章丘(今山东章丘西北)杜伏威年仅十六,与好友辅公祏亡命为盗,后率众起义,转战江淮。其余反隋小股武装不可胜数,或数百人,或数千人,星罗棋布于大河两岸。这一年起义军主要活动于今山东、河北、河南之间,聚保山林川泽,凭借复杂地形与官军周旋,其核心力量则是逃避征役、走投无路的贫苦农民,他们或手执锄耰,或肩扛木棍,以必死之心反抗苛政。
隋炀帝对人民的愤怒与反抗视若无睹,大业八年(612年)仍悍然发兵攻打高丽,第一次东征即动用陆军二十四军、水军一军,总兵力达一百一十三万三千八百人,号称二百万,运送粮械的民夫更倍于此。这场劳民伤财的战争以惨败告终,三十万五千隋军渡辽,生还者仅二千七百人。惨败的消息刺激了全国,促使起义进一步发展。这一年,见诸史籍记载的新的起义军竟达二十一支之多,其中山东十四支,江淮四支,河南、关中、河西各一支。起义的地区显著扩大,从黄河流域延伸至江淮之间,但重点仍在河北、山东。起义的群众基础也大为扩展,除贫苦农民外,尚有牧子——那些身份不自由、受贵族奴役的牧民,以及下层僧侣——他们或因寺院田产被征,或因悲悯众生苦难而加入反抗行列。这些起义军或攻城略地,或流动作战,如燎原之火,渐成不可扑灭之势。
在起义迅速扩大的同时,隋统治集团内部亦发生深刻分裂。大业九年(613年),炀帝不顾天下骚动,发动第二次对高丽战争。当大军云集辽水、炀帝亲赴辽东之际,大贵族杨素之子、礼部尚书杨玄感于黎阳(今河南浚县北)起兵反隋。杨玄感出身关陇军事贵族,其父杨素为隋朝开国元勋,本人又身居高位,其起兵标志着统治阶级上层对炀帝暴政的公开决裂。他联合一批对炀帝不满的贵族子弟,进逼东都洛阳,一时从者如流,众至十余万。炀帝闻讯大惊,被迫从辽东撤军回师。这场统治阶级内部的厮杀,极大地抵消了隋廷的镇压力量,义军乘机发展,此消彼长,形势为之一变。到大业十年(614年),炀帝仍执迷不悟,发动第三次对高丽战争,此时义军已遍布天下,道路隔绝,官军无法按期集中,甚至不得不从征高丽的前线抽调军队回师镇压起义。至此,隋王朝的统治根基已摇摇欲坠,覆亡之日为期不远了。
大业十一年(615年)以后,隋王朝的统治已陷入风雨飘摇之境。面对燎原之势的农民起义,隋炀帝不得不调整战略,将原本用于对外扩张的大部分军队调转矛头,全力镇压国内起义军。这位曾经不可一世的帝王,如今困坐愁城,却仍试图以铁腕手段维系摇摇欲坠的帝国。他下令在郡县城郭、驿站、村庄的周围修筑城堡,强迫农民迁入城堡居住,实行残酷的"坚壁清野"政策,企图以物理隔绝的方式切断义军与民众的血肉联系,使起义军成为无源之水、无本之木。与此同时,统治者对起义军和一般农民展开了疯狂的大屠杀,其残暴程度令人发指。
隋将樊子盖在镇压起义军时,竟将汾水以北的村庄悉数焚毁,火光冲天,数月不灭,无辜百姓流离失所,冻饿而死的不计其数。对于俘虏的起义军将士,他更是毫不留情,全部处以极刑,汾水之滨尸骨成山,血流漂杵。而王世充在打败江南刘元进起义军后,竟将诱降而来的三万人全部活埋于黄亭涧,一时间"积尸与城齐",其手段之阴毒,连同为隋将的同伴亦为之侧目。统治者的残酷镇压,非但未能扑灭反抗之火,反而如同在干柴上浇油,迫使更多的农民铤而走险,加入起义行列。
到大业十二年(616年),起义浪潮已席卷全国,先后在全国各地兴起的起义军大小不下百余支,义众总数达数百万之巨。他们或据山守险,或攻城略地,或流动作战,战术灵活多变。起义军攻陷许多郡县,消灭大量隋兵,隋王朝的统治机器已运转失灵,政令不出都门。面对这一局面,隋炀帝调遣杨义臣率从辽东撤回的部分军队镇压河北起义军,自己则率禁军南下江都(今江苏扬州),企图凭借江淮富庶之地,镇压南下江淮的起义军,同时远离北方的是非之地。
在农民起义军从各条战线向隋王朝发起全面进攻的同时,隋统治集团的地方势力也蠢蠢欲动,纷纷割据称雄。朔方(今内蒙古白城子)鹰扬郎将梁师都,因事获罪逃亡,遂杀郡丞起兵,联合突厥,割据朔方,自称大丞相,后又称帝,国号梁。马邑(今山西朔州市)校尉刘武周,因与太守王仁恭侍婢私通,恐事觉,遂杀仁恭起兵,亦引突厥为援,据有马邑、定襄等地,自称皇帝,国号定杨。金城(今甘肃兰州)金城府校尉薛举,趁隋末大乱,与其子薛仁杲起兵,据有陇西之地,自称西秦霸王,后称帝,拥众三十万,虎视关中。此外,尚有李轨据武威,号凉王;萧铣据江陵,称梁帝;宇文化及、窦建德、王世充等亦各据一方。一时间,群雄并起,隋王朝的版图四分五裂。
大业十三年(617年)五月,隋太原留守、关陇贵族李渊也从太原起兵。李渊出身北周、隋两朝世族,其母为隋文帝独孤皇后之姊,本人又历任要职,深孚众望。他趁隋室危亡、天下大乱之机,以"废昏立明,拥立代王,匡复隋室"为旗号,起兵反隋。七月,李渊趁隋军主力与瓦岗军大战于洛阳之机,率大军西进,一路招降纳叛,势如破竹。十一月,攻克隋都长安,立隋炀帝孙代王杨侑为帝,改元义宁,遥尊炀帝为太上皇,自为大丞相、唐王,总揽朝政。至此,关陇根本之地已落入李氏之手。
大业十四年(618年)三月,在江都的隋禁军将领司马德戡、宇文化及等人,利用关中士兵久戍在外、思念家乡的怨愤情绪,推右屯卫将军宇文化及为主,发动兵变。叛军攻入宫中,隋炀帝仓皇遁入西阁,被叛军搜出。这位曾经巡幸无度、穷兵黩武的帝王,最终被缢弑于江都宫中,时年五十岁。其孙杨浩被立为帝,宇文化及领兵西归,企图返回关中,途中为李密、窦建德所阻,最终败亡。
同年五月,李渊在长安废隋恭帝杨侑,即皇帝位,改元武德,建立唐朝,是为唐高祖。而留守东都的隋越王杨侗,也在洛阳被王世充等人拥立为帝,改元皇泰,史称皇泰主。至此,隋王朝名存实亡,中国进入了群雄逐鹿、争夺天下的新阶段。李渊父子凭借关陇贵族的支持、太原精兵的战力,以及"废昏立明"的政治策略,最终在诸雄混战中脱颖而出,开启了历时二百八十九年的大唐盛世。