唐代的藩镇割据是从肃宗朝开始崭露头角的,到了德宗朝已壮大成皇帝的心腹之患。德宗用人失误,削藩不成,却招来了更大的祸患,出现了“四王二帝”并立的结局,使李氏家族的统治力量进一步削弱。郭子仪像藩镇中大的占据十几州的地盘,小的也有三四个州,河北、淮西的割据势力最大。藩镇中设文武官员并拥有自己的军队,他们不向唐廷缴纳赋税,称得上是小朝廷,这是李唐政权所不能容忍的。藩镇当然是希望永远保持割据的状况,以便子孙世代拥有小范围的统治,但是,唐王朝本是一个统一的整体,怎么能够放任别人与李族来共分天下呢?
德宗即位之初,便把注意力投向了藩镇,他一直试图削夺拥兵自重的地方藩镇节度使的权力,为此,他不惜使用武力。但在朝廷力量不足以打击藩镇割据的现状时,德宗不得不暂时妥协。
德宗建中二年(781年)正月,成德节度使李宝臣病死。按照以往藩镇节度使死后,将职位和土地传给子孙的规矩,李宝臣的儿子李惟岳上表请求继承父位。德宗早想革除藩镇父子相传、不听命朝廷的弊端,坚决拒绝了李惟岳的要求,并命他护其父丧入京进行“国葬”,下诏任命张孝忠为节度使。魏博节度使田悦、淄青节度使李正己、山南节度使梁崇义为了他们共同的利益和李惟岳联手,企图以武力抗拒朝廷。同年八月,李正己死,其子李纳请袭节度又遭到德宗拒绝,藩镇尽反,战争全面铺开。
在战争的头一两年里,朝廷取得了胜利,平叛形势良好。第一年,先是河东节度使马燧、昭义节度使李抱真与神策军将领李晟大破田悦军,另外一名将领唐朝臣又击破魏博、淄青军,打通了江淮运输线;淮西节度使李希烈攻克襄州,梁崇义自缢。第二年,马燧、李抱真、李晟又大破田悦军,当时任卢龙节度使的朱滔攻破成德李惟岳军,田悦退回魏州守城自保,李纳在濮州被围,李惟岳被部将王武俊杀死,王武俊率军投降。到了建中三年(782年)的闰正月,河北道只有田悦的魏州未破,河南道的李纳也在濮州被围,朝廷以为天下之平指日可待,德宗开始飘飘然起来。
德宗任命成德降将张孝忠为易、定、沧三州节度使,王武俊为恒、冀二州都团练使,康日知为深、赵二州都团练使,又将旧成德镇的另外二州德、棣分给另一功臣朱滔。德宗此举欲在利用藩镇打藩镇,旨在分散他们的力量,这也是朝廷在政治上对付藩镇的惯用伎俩。不过,都团练使这一官职地位较节度使低,王武俊不满官位在张孝忠之下,幕僚们也愤愤不平,火气很大,把朝廷的敕书撕成几块。朱滔也是一位颇有野心的节度使,他因没有得到较为富庶的深州也怀有不满的情绪,便在该地屯兵据守。在魏州被围的田悦抓住了这一点生机,派人去深州游说朱滔倒戈。结果,朱滔听取了田悦的话,倒戈朝廷,并又去说服王武俊与张孝忠。王武俊决定与朱、田合作,只有张孝忠不为所动。朱滔与王武俊联合起来,第一步便是去救困在魏州的田悦。朝廷命朔方节度使李怀光讨伐,却被田、朱、王的部队打得大败,朱滔又遣兵去救李纳。
德宗建中三年(782年),朱滔自称冀王、田悦称魏王、王武俊称赵王、李纳称齐王,筑坛告天,朱滔为盟主,称孤。田悦、王武俊、李纳三人称寡人,仿唐朝官制,遍封妻、子、诸将。“四镇”以朱滔为盟主,联合对抗朝廷,声势大振。同时,淮西节度使李希烈自称楚帝,与四镇勾结反叛,从河北到河南皆为硝烟弥漫,且东都危急。
建中四年(783年)十月,德宗准备调往淮西前线平叛的泾原兵马经长安时,由于德宗用人不当,士兵吃的饭菜都是些糙米和素菜,士兵不服,导致了史上著名的“泾师之变”的发生。德宗因此次兵变不得不仓皇逃离长安,李氏皇族在此次士兵哗变中被诛杀了77人。德宗是唐朝继玄宗、代宗后,又一位离开京师避乱的天子。哗变的官兵拥立朱滔的兄长、曾担任泾原军统帅的朱泚为帝,国号为汉,年号应天。朱泚进围德宗所在的奉天,前线李晟、朔方节度使李怀光等军从河北撤军支援,德宗的削藩之战,被迫宣告结束。
兴元元年(784年)正月,德宗痛苦地公开承担了导致天下大乱的责任,并表示这都是自己“失其道”引起的。德宗在诏书中宣布,李希烈、田悦、王武俊、李纳等人叛乱是因为自己的失误,赦免了这些叛乱的藩镇,表示今后“一切待之如初”。除了朱泚以外,甚至连朱滔也予以宽大,许其投诚效顺。从此,德宗开始调整了对藩镇用兵的政策。王武俊、李纳、田悦见到大赦令,取消了王号,上表谢罪。同年二月,由于朔方节度使李怀光联络朱泚反叛,德宗又不得不再次逃往山南西道的梁州(今陕西汉中)避乱。贞元元年(785年)秋,李怀光兵败自杀,李晟在五月打败朱泚收复京师,同年七月,德宗重返长安,结束了颠沛流亡的生活。
德宗皇帝断然拒绝藩镇父死子继的要求,本意是为了防止他们得寸进尺,却招来了更大的祸患,出现“四王二帝”并立的结局,不能不说在一定程度上缘于德宗的冒进之举。德宗在削藩遭遇挫折后,锐气大伤,他对藩镇的态度由武力转为姑息。这一态度的转变,使他以往解决藩镇问题的大好机会转瞬即逝,藩镇割据成为李唐王朝中、晚期积重难返的局面。