隋朝末年,统治者征敛无度,民夫转输不息,徭役无期,士卒多列沟壑,骸骨遍及平野。从公元年间,农民起义的风暴已席卷全国大部分地区,先后在全国各地兴起的起义军大小不下100支,参加的人数达数百万。后来,李渊建立唐王朝取代隋朝时,主要的对手就剩下了河北的“夏帝”窦建德和河南的“郑帝”王世充。
王世充,字行满,本来姓支,是西域的胡人。寄居在新丰(今陕西临潼东北),隋朝末年起兵群雄之一。
公元618年(大业十四年)三月,宇文化及在江都叛乱,隋炀帝被弑。五月,炀帝驾崩的消息传到洛阳,越王侗于是作为皇位继承人被拥立为皇帝,年号皇泰,在后来的历史中被称为皇泰主。王世充被皇泰主封为郑国公,与段达、元文都等其他六人共同辅政,时人称为“七贵“。
皇泰主登基时,洛阳已被李密重重包围,有效统治范围只有洛阳一城。后来,王世充击败李密,各地守将纷纷向王世充投降,王全部占领了李密原来的地盘,势力范围从洛阳一城猛然扩展到整个河南。王世充同时还得到了李密部下的秦叔宝、程知节(就是程咬金)、罗士信、裴仁基、单雄信等名臣大将,手下因而人才济济。
公元619年(唐武德二年)三月,皇泰主被迫封王世充为相国,统管百官,封为郑王。同年四月,王世充冒充皇泰主发出诏书把隋朝帝位让给王世充,派遣哥哥王世恽到含凉殿废皇泰主,僭位为帝,建年号开明,国号为郑。
当政期间,人心一天一天散失,他就用酷刑严厉控制,家里有一个人逃跑,全家不论老少都株连被杀,父子、兄弟、夫妻之间只要告发就可免罪。又命令五家为一保,互相监督,如果有人全家叛逃而邻居没有发觉,四周的邻居都要处死。处死的事接连不断,人们叛逃越来越厉害,甚至上山砍柴的人,出去回来都有时间限制,弄得公家私人人人自危,都无法生活。并且把宫廷作为大监狱,只要产生怀疑,就把人家连同家属捆绑起来送进宫廷关押。每当派遣将领出外作战,也把他的亲属拘留在宫里作为人质。被囚禁的人一个紧挨一个,不少于一万人,没有食物,饥饿而死的一天几十人。王世充招兵打仗没完没了,库存的粮食很快吃光,城里的人吃人肉。有的人抓来泥土放进瓦瓮,用水淘洗,沙石沉在底下,取出浮在上面的泥浆,把糠麸掺在里头,做成饼子来吃,人人都身体肿胀而腿脚发软,一个个躺在道路上。
窦建德,字建德,贝州漳南(河北故城县)人。隋朝末年河北农民起义领袖,东汉大司空窦融后代,辽东宣王窦拓玄孙。其出身扶风窦氏,世代务农,重信然诺,出任里长。崇尚豪侠,为乡里敬重。大业七年,隋炀帝募兵高句丽之时,担任二百人长,目睹兵民困苦,义愤不平,遂抗拒东征。带领孙安祖进入高鸡泊,举兵反叛,全家坐罪遇害。率部归顺高士达起义军,先后击败魏刀儿、宇文化及、孟海公等,建立夏国,称雄于河北。
窦建德每当攻陷城镇打败对手,所得到的财物,一起分发奖赏给各位将领,自己一样东西都不要。又不吃肉,日常吃的只是蔬菜、脱皮粟米饭。他的妻子曹氏不穿丝织衣裳,小妻、侍女只有十几人。进聊城后,得到上千名宫女,都有姣艳的容貌姿色,当即遣散。得到隋朝文武官员和骁果军上万人,也遣散,听凭他们到哪里去,有想到关中和东都去投奔别人的,照样发给足够的衣物食粮,派兵护卫,送出辖区。
公元620年7月,李世民率军攻打洛阳郑帝王世充,王世充向占据河北的夏帝窦建德求助,窦带领30万大军一路攻陷管城(今郑州),推进到牛口(今荥阳牛峪口)。李世民深知武牢关的重要,带领3500人迅速占据武牢关,以阻窦建德西进,切断了窦与王世充的联系。李世民据武牢关之险,闭门不出,与窦建德打起消耗战;又悄悄派一支部队截断窦军粮草;随后牧马黄河北岸,装出已无粮草的迹象,引诱窦军发动最后的进攻。窦建德果然上当,在汜水东岸摆开二十余里阵势,欲与唐军决战。谁知李世民让军队闭门不出,等到窦军疲惫不堪正泄气的时候,猝不及防地杀出,最终生擒窦建德,为唐王朝的建立赢下了关键的一仗。
公元621年(武德四年)七月九日,李世民凯旋回到长安,将王世充、窦建德献于李渊,李渊历数王世充的罪行,王世充回答说:“按照我的罪过,实在是死有余辜,但您的爱子秦王曾许诺不杀我。“果然李渊释放了他。而将窦建德在长安街市斩首,时年四十九岁。
虽然都是俘虏,但王世充在河南不得人心,势力基本被李世民消灭,对李渊已经没有威胁了。但窦建德在河北深得人心而且势力尚在,关陇人有“以威杀治国”的传统,所以李渊最终选择了杀死窦建德,留下王世充。
不过,王世充也没有什么好下场,他和哥哥王绁、老婆、孩子一起流放蜀地,由于押解人员还没有准备好,王世充一家暂时被关押在长安附近的雍州。某日,忽然来了几个唐官称李渊有旨,要王世充接旨,王急忙出应,不料那几人立刻乱刀齐下,王世充的人生就此落幕。
后来查明,那几人中带头的是唐定州刺史独孤修德,他的父亲独孤机是王世充的部下,在武德二年正月企图降唐,被王世充所杀,独孤修德杀王世充是为父报仇。