天宝十四年十二月二日,安禄山大军来到了灵昌郡以北的黄河边,准备在这里渡黄河。由于没有桥,渡河不易。但这时恰好是冬天,虽然河面还没有结冰,但安禄山却制造了一座冰桥。他的做法是找一些残破的小船,用绳子把小船连起来,横跨黄河,再在船和船之间塞上草木,形成了一道由草木和小船组成的漂浮的链子。第二天,围绕着链子的水都结了冰,就形成了一条冰做的浮桥,他的士兵就顺着这座冰桥渡过了黄河。
过河后,叛军很快攻克了灵昌郡。安禄山的军队铺天盖地,又缺乏纪律约束,看上去如同成群的野兽肆虐着城乡。人们既不知道叛军的数量,也惊于他们的残忍,往往望风而逃。
接下来他们遇到的,就是新设立的河南节度使的治所陈留了。此时,首任河南节度使张介然刚刚来到这里不过几天时间,他想组织军队抵抗,但陈留的唐军早已经吓破了胆,不愿意抵抗。到了初五,陈留太守郭纳不顾张介然的命令,率众开城投降。投降的人有近万人之多,这些人以为只要投降就可以活命,不幸的是,也正是在这里,安禄山得到了儿子安庆宗的死讯,他大哭一场,决定将所有的投降将士都杀掉。近万人在街道两侧排开,被一一斩首,皇帝刚刚任命的第一任河南节度使张介然也被斩于军门。
陈留的失守,让皇帝的第一道防线崩溃了。
安禄山获得陈留之后,第二个目标是荥阳郡和旁边的虎牢关。大约在初七,安禄山的军队到达了荥阳郡,对唐朝不利的是,此时的荥阳郡守军也被吓破了胆,许多士兵被外面的鼓声吓坏了,从城墙上掉了下来。到了第二天,士兵们早早开城投降,安禄山杀掉了荥阳太守崔无诐,乘着势头派遣将领田承嗣、安忠志、张孝忠为前锋,向封常清所在的虎牢关进发。
从实力上说,在虎牢关对峙的两军是有明显的差异的。在西北领军时,封常清所率领的士兵大都是身经百战的老兵,这些老兵是在与蛮族的较量中培养的战斗技能。但在此时,他并没有办法把西北士兵带来,只能就地招募新兵。这些新兵都没有战斗经验,甚至连训练的机会都很少。封常清接受任职只有短短的二十天,他要从长安赶到洛阳招募兵马,前往虎牢关做好守卫,还要训练士兵,时间显然是不够的。
此时,安禄山的军队却是身经百战,又恰好处于士气的高峰。唐朝的士兵们遭遇采取闪击战的安禄山军队,立刻陷入了绝境之中。刚刚一接触,安禄山就派出铁骑对唐军进行冲击,唐军立刻大败。
封常清丧失了虎牢,向洛阳方向逃去,一路上他收集残兵,在一个叫作葵园的地方做了二次防御,随后再次被叛军击败。溃军背后紧跟着追兵,一路上兵荒马乱,到意识到形势的严峻时,他们距离东都洛阳已经很近了。
到达洛阳城外,封常清做了最后一次努力。洛阳城向东的方向有三个城门,封常清将他的残兵集结在东北方向的上东门外,与敌军对峙。但这一次又失败了。
十二日,叛军攻入洛阳城,唐朝的东都陷落了。到这时,距离安禄山离开范阳的根据地,才刚刚过了一个月的时间。
叛军的士兵在洛阳城内烧杀掳掠,享受着征服了半个帝国的乐趣。他们丧失了纪律,反而给了封常清最后的机会。他在洛阳城再次搜集残军,展开了巷战。
洛阳城以洛水为界,城市分成了两部分,分别在南北两岸,中间有数座桥沟通。其中皇帝居住的宫城位于城市的西北角,宫城以南是皇城,而在宫城和皇城的东面还有一个小城区叫作东城,东城的北面是一个叫作含嘉仓城的小堡垒,是洛阳的仓库所在地。
封常清在上东门外交战失利后,他的溃军进入城中向西逃窜。城内也有许多里坊,坊间都有墙,溃军一路上经过了几个里坊,来到了东城外的清化坊,这里是从洛阳到长安的驿道的起点。这个起点上有一个叫作都亭驿的地方,是千里驿站的第一站,也是人们饮酒送别的地方。此刻,封常清在这里召集了溃军,再次与叛军作战,但依然失败了。
唐军再次向东逃窜,这就到了东城的东门:宣仁门。在宣仁门,屡败屡战的封常清又一次与叛军作战,还是失败了。
到这时,封常清终于认定洛阳已经守不住了,于是继续向西穿过皇城,进入洛阳城以西的西苑,再向西离开。此时已是十三日。封常清离开后,河南尹达奚珣投降了安禄山,留守李憕、御史中丞卢奕战死。至此,洛阳之战落幕。
封常清逃离洛阳后,在河南地区,唐朝的军队还剩最后一道防线,那就是位于陕郡(现河南省三门峡市陕州区)的高仙芝部队。事实上,封常清也希望与高仙芝会合后再做抵抗。高仙芝曾经是封常清的上司,两人在西北任职时,配合默契,因此两人如果能够联手并获得全权,假以时日,且不在乎一城一池的得失,是有可能与安禄山抗衡的。
当封常清到达陕郡时,作为民事长官的陕郡太守窦廷芝已经渡过黄河,向北到河东地区(现属于山西)躲避,他的属下和人民也纷纷四处躲藏。但高仙芝的军队还在陕郡准备迎敌。
封常清见到高仙芝,向他提议说,安禄山的士气正处于高涨状态,唐军应该避开这个风头。陕郡并不是好的防守地,因为它面向河南的方向过于辽阔,而面向陕西的出口却很狭窄,这其实是对叛军有利、对唐军不利的。唐军容易被敌人死死压在窄道上无法机动出击。一旦敌人攻克了陕郡,就可以长驱直入进入关中地区。
在唐代时,防守关中最险要的关口已经从函谷关转移到了更西的潼关。潼关是一个建在黄河南岸高地上的堡垒,堡垒本身就易守难攻,更何况它还有一个天然的附属系统,几乎是不可越过的:在堡垒的南面有一条巨大的沟壑深深地切入地下,叫作禁沟,敌人要进入陕西,要么攻克高处的潼关堡垒,要么就下到陡峭的沟底,再爬到禁沟的另一侧——这显然是不可能的。守军只需要以少量的兵力守在禁沟的西侧,就可以消灭无数的大军。所以只要利用得当,潼关几乎是不可攻克的。
但在封常清与高仙芝部队会合前,唐朝的军队竟然没有利用好潼关天堑。高仙芝驻扎在陕郡,潼关竟然没有人把守,这事实上意味着叛军只要通过压缩唐军的机动性,消灭掉陕郡的唐军,就可以长驱直入关中地区了。封常清建议高仙芝放弃不易防守的陕郡,向西回到潼关,设立一条更加牢固的防线,只要唐军不犯大的错误,叛军根本无法攻克潼关,到时随着叛军士气的低落,才是收复洛阳,乃至进攻河北的时机。
高仙芝采纳了封常清的意见,于是拔营向潼关撤退。不想他的士兵也没有经过训练,不懂得如何有序撤退,加之已经丧胆,一听说要撤退,立刻你争我赶,变成了溃军。就在这时,叛军也赶到了,在他们的追赶下,唐军骑兵踩踏着步兵,步兵之间也互相践踏,死伤无数。
在将军们的努力下,唐军终于退到潼关建立了防守,叛军一时占不到便宜,就退回了陕郡。安禄山派他的大将崔乾祐屯驻在陕郡,随时准备再次进攻。这样,唐军和叛军就在潼关和陕郡一线,利用地形形成了稳定的对峙,双方暂时都无法再占对方的便宜了。
但在帝国东部地区,事情依然在麻烦之中:随着叛军的得势,东部更多的地方开始投降安禄山。其中包括位于中原的临汝、弘农、济阴、濮阳,以及位于北方的云州周边地区。
在西进的同时,安禄山还不忘向河南的东方进攻,试图将战线延伸到淮河地区,打通前往扬州和长江流域的道路。安禄山认为,如果占据了扬州,就等于彻底破坏了唐朝的粮仓,也等于获得了无限的供给。于是,他派了千余骑兵向睢阳方向进攻。
天宝十五载(公元756年)正月初一,安禄山在洛阳自称大燕皇帝,改元圣武。此刻的他依然处于上升期,而捉襟见肘的唐王朝看上去已经日薄西山了。