公元755年12月16日,安禄山召集诸将,诈称有密旨来召,要求自己立即率兵勤王。众将听后都一脸惊讶,不敢多说一句话。于是安禄山起兵十五万,自范阳进发,迅速攻克了河北二十四郡,占领东都洛阳。唐玄宗急命李随为河南节度使、许远为睢阳太守,令其阻击叛军的东南侧,切断通往江淮的要道,确保江南漕运畅通。此时平原太守颜真卿率先起兵平叛,河北诸郡在沦陷一个月后又争相呼应官军。唯有谯郡太守杨万石想要投靠安禄山,他逼迫下属张巡去向叛军献降。张巡不肯听命,在逃到真源之后,他便率领吏民痛哭于老子庙中,之后召集义兵二千余人,为朝廷坚守雍丘城。
安禄山于次年正月称帝后,叛军迟迟未见进展。五月份,郭子仪与李光弼击败史思明,收复了河北十余郡。安禄山大为惊恐,一度想要退回范阳。谁知一个月后,哥舒翰在唐玄宗的命令下,弃险不守,选择主动出击,结果导致全军覆没,潼关被叛军攻占,局势急转直下。败讯传来,唐玄宗急忙丢弃京城,往川蜀地区逃命。郭子仪、李光弼被迫分兵南下增援,导致袭击范阳的行动失败,战乱进一步扩大,而那个恐怖的日子也就要到来了......
唐玄宗逃走之后,河南、河北与关中的大部分地区都被安禄山占领。叛军只要继续向东南推进,在攻克雍丘与睢阳之后,便可控制住富庶的江淮地区,并且切断漕运要道,那样唐朝就会被挤压在宁夏与四川这两个偏远的地方,太皇上唐玄宗与今上唐肃宗都再无还手之力了。
于是,叛军令狐潮奉命进攻雍丘,他与守城将领张巡是故交,在交战之前,二人于城下交涉。令狐潮大声说:“天下事去矣,足下坚守危城,欲谁为乎?”
张巡回答说:“足下平生以忠义自许,今日之举,忠义何在!”令狐潮面露愧色而退,他令军队团团围住雍丘,切断城中与外界的一切联系。四十天后,令狐潮又对张巡说长安已经沦陷,皇上自己都逃亡去了,你何不趁早投降?当时有六名将领认为众寡不敌,玄宗存亡未可知,不如投降为好,张巡便假装同意。第二天,他在大堂上陈设玄宗的画像,然后引六名将领到跟前,当着众人的面将他们全部斩首。
眼见粮草即将耗尽,张巡便打开南门,假装向敌人叫战,暗地里却派勇士衔玫渡河,偷取了叛军的千斛盐米。他还让士兵们编出一千余个稻草人,趁着夜色沉下城去,诱使敌人争相射击,以此借得弓箭数十万枝。之后又趁敌人松懈的机会,放下五百名敢死之士,前往焚杀敌军的营帐,使令狐潮付出了沉痛的代价。在经过四个月的战斗之后,张巡以三千人的兵力前后斩杀叛军数万人。
然而,随着山东地区沦入敌手,雍丘的粮道被断绝了。张巡只得率众转战宁陵,他于唐肃宗至德二载收到睢阳太守许远发来的急报,说叛将尹子奇正引兵十三万来犯,如果睢阳失守,江淮就保不住了。张巡闻讯,急忙离开宁陵,率领三千兵马进入睢阳,与许远组成一支仅六千八百人的守城部队。
张巡入城之后,许远自知才能不如,便将主帅的位置让他,自己则负责后勤保障的工作。
在张巡的指挥下,官军与叛军一天之内交锋二十回合,昼夜苦战不休。在十六天里,共生擒叛将六十余人,斩杀士卒两万有余,在付出巨大的伤亡之后,叛军只得连夜退去。
为了防止官军乘胜收复陈留,心有不甘的尹子奇在一个月后又领兵来犯。张巡便对士兵们说:“吾蒙上恩,贼若复来,正有死耳。诸君虽捐躯,而赏不直勋,以此痛耳!”于是宰杀黄牛来犒劳军士,众人皆为之感泣。将领南霁云等出城迎敌,径直进攻尹子奇的大营,斩拔将旗而还。在这次交战中,尹子奇被射瞎了左眼,叛军只得解围而去。
然而,到了七月份的时候,叛军第三次来攻。此时,睢阳城中的粮草已经耗尽了,士兵每天只能领到一小点米,要掺着茶纸和树皮才能下咽。在前两次交锋之后,士卒消耗至一千六百人,且都疾病缠身,不堪战斗。眼见城中日益危迫,张巡便令南霁云突围而出,向彭城的许叔冀求救,不料后者闭门不见。南霁云只得再往临淮去找贺兰进明,进明认为睢阳马上就要沦陷了,现在出兵已经没有意义。于是他大摆宴席来招待南霁云,想收其为己用。南霁云大哭说:“昨出睢阳时,将士不粒食已弥月。今大夫兵不出,而广设声乐,义不忍独享,虽食,弗下咽”。说完拔剑砍掉自己的一根手指,然后回睢阳去赴死。