梁朝:朱温所建,控制河南、山东、苏北、皖北、鄂北、晋南,以及河北南部邢台、邯郸一带。
晋国:李存勖所有,占据山西大部。
燕国:刘仁恭、刘守光相继割据,占有今北京、天津地区,以及河北沧州、张家口、唐山,以及辽宁朝阳一带。
义武军:王处直所据,占有河北保定附近二州,在河北诸势力中面积最小。
赵国,即唐末的成德军节度使,占有镇(石家庄)、赵(赵县)、深、冀四州,因为统治者王镕被朱温封为赵王,所以俗称赵国。
王镕与李存勖一样,并非汉人,而是回鹘人的后裔,十岁时袭封父亲王景崇的成德节度使之职。而王镕往上溯四五辈,他的祖先世代割据成德,成为河北大藩,史称承祖父百年之业,士马强而蓄积富。
赵国北接义武,南接梁朝的魏博,东接燕国,西与李存勖的晋国比邻而居。在一轮又一轮的河北争霸战中,王镕奉行“睦邻友好”的不结盟外交政策,尽可能地不与邻藩发生武装冲突。虽然朱温是天下第一强藩,但早年的朱温把主要精力都放在了消灭秦宗权、朱瑄、时溥等中原军阀上,暂时顾不到河北。而王镕的老邻居李克用占据河东,地大兵强,是王镕无论如何都得罪不起的。所以王镕特别重视与河东的外交关系,李克用曾经发兵攻赵,被王镕花了二十万匹绢给劝退,晋赵和好。但等到朱温摆平中原后,开始经营河北,王镕知道朱温的实力,更不敢得罪朱温,“卑辞厚礼,以通和好”。等到朱温建梁后,把自己的女儿嫁给了王镕的儿子王昭祚。当时梁强晋弱,王镕只能向强者低头,承认梁朝的正统性。
王镕虽然向朱温称臣,但他的成德军毕竟是独立政权,并不受朱温直接控制。而赵国西与河东为邻,如果朱温能拿下赵国,就能在河东的东线对李存勖狠狠地插上一刀,让太原城中的李存勖每天都生活在梁军随时可能偷袭的恐惧之中。
为了实现吞并赵国的计划,朱温开始对王镕,以及更北边的王处直慢慢下手,至于说朱温的理由是怀疑王镕与李存勖暗中私通的一个蹩脚的借口而已。
就在这个时候,燕国的刘守光也盯上了赵国,发兵南屯涞水,似乎要偷袭赵国。朱温觉得并赵的机会来了,即时发魏博兵三千人进屯深、冀二州,表面上说要帮助赵国击退燕军,实际上是等待时机消灭赵国。
王镕不是不明白朱温的意思,但慑于朱温的淫威,王镕不敢和朱温翻脸。王镕希望能说服朱温撤兵,并派人去洛阳告诉朱温,说赵国已经和燕国和解,刘守光撤兵。王镕天真地以为找到了最合理的借口,朱温就可以撤兵了。即将到嘴的肥肉,没人会傻到放弃,朱温表面上和王镕打马虎眼,暗中却让三千魏兵突然发难,杀掉了守城的赵兵。王镕这时才发现自己上当,再也不管和朱三的亲家情了,立刻向李存勖求援。
李存勖收到了王镕的鸡毛信,不过在是否救援赵国的问题上,晋国高层发生了严重的分歧。大多数幕僚都认为王镕是朱温的儿女亲家,“镕久臣朱温,岁输重赂,结以婚姻,其交深矣,此必诈也!”这极有可能是朱温与王镕演的双簧戏,目的是诱晋兵深入,聚而歼之。大家的意见是先缓一缓,看看朱温下一步动作再作计较。而李存勖却认为王镕只是屈服于朱温强大的军事压力,并非真心归降,王镕臣梁的底线是赵国独立自主。李存勖的态度非常明确:唇亡齿寒,今不救赵,赵亡,晋岂能独存!李存勖告诉大家:“我若疑而不救,正坠朱氏计中。宜趣发兵赴之,晋、赵事力,破梁必矣!”
河东黑鸦军再次兵发太原城,由周德威带队疾驰出井陉口,直赴赵州,阻止梁军对赵国首府真定随时可能发起的攻击,李存勖随后赶到。
朱温本来是希望三千精兵赖在赵国不走,给王镕制造压力,敦促王镕早点献城。但朱温完全没有想到王镕竟然暗中向李存勖求救,李存勖已率晋军拦在赵州。李存勖承受不起赵国入梁给晋国带来的生存压力,而朱温同样承受不起赵国入晋带给梁朝的生存压力,所以既然李存勖要把事情闹大,那么就趁这个机会干掉李存勖。
梁开平四年(910年)十二月初三,天下唯一超霸朱温甩出手上一张王牌:宁国军节度使王景仁任北面行营招讨使,潞州招讨副使韩勍为副使,相州刺史李思安为前锋,出兵十万(《资治通鉴》作七万,《旧五代史·周德威传》作八万)。同时,魏博军协同王景仁的主力北上作战,大将阎宝、双枪王彦章率两千精锐骑兵跟进,作为机动接应。
梁军主将王景仁其实不是朱温的嫡系,他本名王茂章,善使一条大槊,性情暴戾,是淮南王杨行密手下虎将,杨行密死后,杨渥继位,忌王景仁之才,王景仁为避祸,私奔吴越钱镠。后来钱镠派王景仁去洛阳朝见朱温,朱温非常欣赏王景仁,便留为己用。而为了避朱梁祖讳,王茂章改名王景仁。