唐朝中期,淮西镇是当时藩镇割据的一个顽固堡垒。公元814年,淮西节度使吴少阳去世,他的儿子吴元济自立。唐宪宗发兵四路征讨淮西,但是连续攻战三四年却劳而无功。第一任主帅高霞寓被吴元济打得大败,第二任主帅袁滋畏敌如虎,一直不敢与吴元济交战。在这种形式下,朝廷有不少官员都认为不能再打下去,大臣裴度却认为淮西好比身上长的毒疮,不可不除。唐宪宗拜裴度为宰相,决心继续征讨淮西。
公元817年,朝廷派李愬(sù)担任唐州(今河南唐河)第三州节度使,要他进剿吴元济的老巢蔡州(今河南汝南)。
唐州的将士打了几年仗,都不愿再打,听到李愬一来,有点担心。李愬到了唐州,就向官员宣布说:“我是个懦弱无能的人,朝廷派我来,是为了安顿地方秩序。至于打仗,我不行。”
这个消息传到了吴元济那里。吴元济打了几次胜仗,本来就有点骄傲,听到李愬不懂得打仗,更不把防备放在心上了。以后,李愬根本不提打淮西的事。唐州城里有许多生病和受伤的兵士,李愬一家上门慰问,将士们都很感激他。
元和十二年(公元818年)二月,李愬的兵士在边界巡逻,碰到一小股淮西兵士,唐军把淮西兵士打跑了,生擒了淮西军的一个小军官丁士良。丁士良是吴元济手下的一名勇将,经常带人侵犯唐州一带,唐军中很多人都吃过他的亏,非常恨他。这一回活捉了他,大伙都请求李愬把他杀了,给死亡的唐军兵士报仇。
将士们把丁士良押到李愬跟前。李愬吩咐兵士给他松了绑,好言好语问他为什么要跟吴元济闹叛乱。丁士良本来不是淮西兵士,是被吴元济俘虏过去的,见李愬这样宽待他,深受感动,并向李愬献了一计,就投降了。
李愬靠丁士良的帮助,打下了淮西的据点——文城寨和兴桥寨,先后收服了两个降将,一个叫李祐,一个叫李忠义。李愬知道这两人都是有勇有谋的人,就推心置腹地信任他们,跟两人秘密讨论攻蔡州的计划,有时讨论到深更半夜。李祐向李愬献计说:“吴元济的精兵都驻扎在洄(huí)曲(今河南商水西南部)和四面边境上,守蔡州的不过是一些老弱残兵。我们抓住他的空隙,直攻蔡州,活捉吴元济是没问题的。”
李愬把这个计划秘密派人告诉裴度。裴度也支持他,说:“打仗就是要出奇制胜,你们看着办吧。”
李命令李祐、李忠义带领精兵三千充当先锋,自己亲自率中军、后卫陆续出发。除了李愬、李祐几个人,谁也不知道到哪里去。有人偷偷问李愬,李愬说:“只管朝东前进!”
赶了六十里地,到了张柴村。守在那儿的淮西兵毫无防备,被李愬带的先锋部队全部消灭。李愬占领了张柴村,命令将士休息一会,再留下一批兵士守住张柴村,截断通往洄曲的路。一切安排妥当,他就下令连夜继续进发。
将领们又向李愬请示往哪里去,李愬这才宣布:“到蔡州去,捉拿吴元济!”
将领中有一些是在吴元济手里吃过败仗的,一听到这个命令,大惊失色。监军的宦官特别胆小,急得哭了起来,说:“我们果然中了李祐的奸计了。”对此,李愬不予理睬,严令全军以最快的速度前进。
这个时候,天色已晚,并下起了大雪。从张柴村通往蔡州的路,是唐军从来没走过的小道。大家暗暗叫苦,但是,李愬平日治军很严,谁也不敢违抗军令。
半夜里,兵士们踏着厚厚的积雪,又赶了七十里,才到了蔡州城边。正好城边有一个养鹅、鸭的池塘,把人马发出的响声掩盖过去了。
李祐、李忠义吩咐兵士在城墙上挖了一个个坎儿,他们带头踏着坎儿爬上城,兵士们也跟着爬上去。守城的淮西兵正在呼呼睡大觉,唐军把他们杀了,只留一个打更的,叫他照样敲梆子打更,接着,打开城门,让李愬大军进城。
鸡叫头遍的时候,天蒙蒙亮了,雪也止了。唐军已经占领了吴元济的外院,吴元济还在里屋睡大觉呢。有个淮西兵士发现了唐军,急忙闯进里屋报告吴元济说:“不好了,官军到了。”
吴元济懒洋洋躺在床上不想起来,笑着说:“这一定是犯人们在闹事,等天亮了看我来收拾他们。”刚说完,又有兵士冲进来说:“城门已经被官军打开了。”
吴元济奇怪起来,说:“大概是洄曲那边派人来找我们讨寒衣的吧!”吴元济起床后,只听见院子里一阵阵吆喝传令声:“常侍传令……”(常侍是李愬的官衔)接着,又是成千上万的兵士的应声。吴元济这才害怕起来,说:“这哪来的常侍?怎么跑到这儿来传令?”说着,带了几个亲信兵士爬上院墙抵抗。
李愬对将士说:“吴元济敢于顽抗,是因为他在洄曲还有一万精兵,等待那边来援救。”
驻洄曲的淮西将领董重质,家在蔡州。李愬派人慰抚董重质的家属,派董重质的儿子到洄曲劝降。董重质一看大势已去,就亲自赶到蔡州向李愬投降了。
李愬命令将士继续攻打院墙,砸烂了外门,占领了军械库。吴元济还想凭着院墙顽抗。第二天,李愬又放火烧了院墙的南门。蔡州的百姓们受够了吴元济的苦,都扛着柴草来帮助唐军,唐军兵士射到内院里的箭,密集得像刺猬毛一样。到太阳下山的时候,内院终于被攻破,吴元济在走投无路的情况下,只好哀求投降。