安史之乱被平息之后,唐帝国的政治军事实力大为削弱。投降唐朝的安史余部在河北地区仍有相当大的势力,唐朝统治者为了换取他们的拥戴,分别封以诸镇节度使的名号,主要有卢龙镇(治今北京市)、魏博镇(治今河北大名)和成德镇(治今河北正定),合称河朔三镇。其中幽州卢龙镇节度使李怀仙原为史朝义部将,降唐后仍任原职,他在幽州地区拥有数万军队,修兵缮邑,笼络军心,户版不籍于天府,税赋不入于朝廷,名为藩臣,实则割据。从公元763年(广德元年)李怀仙割据幽州起,至913年(后梁乾化三年)李存勗从山西攻占幽州止,在150年内,幽州地区先后更换了28任节度使。他们名义上为朝廷授职,实际上或为父子兄弟相承,或为军中部将逐帅自立,中央政府根本无法控制,只好姑息羁縻以求得一时苟安。
长期的藩镇割据给幽州人民带来莫大的灾难。幽州地区兵祸不断,统治者连年征调百姓服役、当兵,大肆搜刮民间财富,使“闾里为之一空”。尤其是唐末五代初,刘仁恭、刘守光父子割据幽州达19年之久,极端贪婪凶残,使幽州人民的苦难达于极点。刘仁恭当权期间,在与宣武节度使朱全忠争战中,竟然将幽州境内凡15岁以上、70岁以下的男子全部征召入伍,并且要自带兵粮。为了稳固军心,还在当兵的男子脸上一律刺上“定霸都”,在士人胳臂上刺“一心事主”四字。刘仁恭还“筑宫大安山(今房山区境内),选美女充其中。又与道士炼丹药,冀可不死”。此外,他禁止民间使用铜钱,改铸铁钱,甚至“令燕人用墐土为钱,悉敛铜钱凿山而藏之。已而杀其工以灭口”。更为荒唐的是,他还禁止南方茶商入境,令人把山上的草木叶采来当茶叶强行卖给老百姓,以获厚利。
907年(后梁开平元年),刘仁恭之子刘守光幽禁其父,自任节度使。刘守光为政,苛酷甚于其父,史书记载他命人制铁笼、铁刷,“人有过者,坐之笼中,外燎以火,或刷剔其皮肤以死”,致使幽州士庶很多逃奔他乡。911年(后梁乾化元年)八月,刘守光称帝,以幽州城为都城,建国号大燕,建元应天。为避免与安禄山大燕同名,故史称刘守光建立的燕为“中燕”。中燕仅存三年,913年,后来建立后唐政权的晋王李存勗亲征幽州,攻陷幽州城,擒杀刘氏父子,以周德威任幽州节度使。
幽州地区长期被藩镇割据势力所把持,已然失去了封建中央集权国家北方门户的作用。这时,东北契丹族势力日渐强大,经常出兵南下袭扰。公元917年,耶律阿保机派汉族降将卢文进领兵50万攻打幽州。卢文进熟知幽州地形,首先派军队攻占居庸关以西,再围攻幽州城。夏四月,契丹军采用飞梯攻城,并挖掘地道,城中则掘开地道,向里灌油燃烧以阻击敌兵;契丹军又在城外堆土山攻城,城中又熔铜汁以洒杀敌兵。幽州守军在援军的支持下守城近二百天,使耶律阿保机南侵的企图落空。公元928年(后唐天成三年),新即位不久的耶律德光又两次出兵河北,均被击败,溃不成军。在逃经幽州时,被后唐军邀击,“余众散投村落,村民以白梃击之,其得脱归国者不过数十人”,自此契丹不敢再轻易来犯。尽管当时,契丹占领了山后的蔚、新、妫、武、儒诸州和幽州以东的营、平等州,但向幽州几次进兵却始终未能攻下,这说明中原王朝还是有保卫和控制幽燕地区的能力。
为了防御契丹,后唐政权在山西、河北等地屯驻了大量的军队,其中驻守太原的河东节度使石敬瑭为后唐明宗之婿,手中握有重兵。公元936年(后唐清泰三年),石敬瑭起兵反后唐。为了夺取后唐中央政权,他遣使向契丹统治者耶律德光求援,以割让幽(今北京)、蓟(今天津蓟县)、瀛(今河北河间)、莫(今河北任丘)、涿(今河北涿州)、檀(今北京密云)、顺(今北京顺义)、新(今河北涿鹿)、妫(今河北怀来)、儒(今北京延庆)、武(今河北宣化)、云(今山西大同)、应(今山西应县)、寰(今山西朔县东北)、朔(今山西朔县)、蔚(今河北省蔚县)等十六州给契丹,岁纳帛30万匹为条件,石敬瑭还上表“称臣于契丹主,且请以父礼事之”。这时,镇守幽州的节度使赵德钧也想乘机自立为帝,同样希望得到契丹的支持,但他只是答应与契丹结为兄弟之国,让石敬瑭继续镇守河东。这个交换条件,显然要比石敬瑭的条件差得多,不但没有得到耶律德光的回应,反而因按兵不动,助长了耶律德光的南下。在契丹5万骑兵的帮助下,石敬瑭攻下洛阳,建立了后晋政权。此时,在幽州的赵德钧、赵延寿父子看后唐政权大势已去,遂投降契丹统治者,献出幽州城,结果反被锁拿回契丹本土。幽州地区自此归属契丹贵族的统治之下,北京历史开始了新的篇章。