公元378年,在前秦统一北方后,东晋也在积极部署和备战,该年荆州刺史、征西大将军桓豁薨,于是以桓冲为车骑将军、荆州刺史、督七州军事;以谢玄为建武将军、兗州刺史、广陵相、监江北诸军;以朱序为为南中郎将、梁州刺史、监汉水诸军;以王蕴(晋孝武帝司马曜的岳父)为徐州刺史、督江南晋陵诸军。此后,又以谢安为司徒。可以说是谢安在与前秦决战前的重大部署,谢安经过多年经略,不但东晋政通人和,而且也达到其“荆扬衡天下平”的布置。
同年二月,前秦天王苻坚遣将领分兵三路攻打东晋西部要塞襄阳城,以苻丕(苻坚长子)为征南大将军、都督征讨诸军事,率尚书慕容暐等将领统7万兵,以荆州刺史杨安为前锋,以征虏将军石越率精骑1万出鲁阳;以京兆尹慕容垂、扬武将军姚苌率5万出南阳;以右将军毛当等将领帅众4万出上庸;一共17万兵马汇合攻打襄阳城。
四月,前秦军队抵达汉水以北,东晋梁州刺史朱序以为前秦没有船只无法渡河,结果没做防备。前秦军前锋石越率领五千骑兵顺流渡过汉水,朱序惶恐下只得固守襄阳城。石越渡河后缴获了一百多艘船只,用来接运其余的兵众。苻丕统领众将领攻打襄阳城,苻丕急于攻城但是遭到东晋军的顽强抵抗,此后慕容垂攻克南阳郡南下与苻丕汇合。苻丕的部将对他建议说,前秦军兵力十倍于朱序的晋军,军需粮食也足够充沛,只要包围襄阳城,断绝其粮道,切断东晋的援军,到时襄阳城不攻自破。于是苻丕采纳了这个建议包围了襄阳城。
东晋车骑将军桓冲得知前秦军包围襄阳城后,率7万兵赶来打算支援,派出南郡相率1万兵力为前锋迎敌,但畏惧前秦兵力势大,不敢迎敌于是就地驻扎。襄阳城之战一直打到了年底,也是前秦自统一战以来历时最长的,期间朱序屡屡出城迎击打退前秦军,由于襄阳一直没攻下又听说苻丕围攻襄阳不见效,前秦苻坚大为震怒,命人带诏书责备苻丕,说军队出征一年不能无功而返,特别宽恕一次,让苻丕等将领将功赎罪。并赐剑一把,如果苻丕攻克不下就用剑自杀不用再回去。做为南征大都督的苻丕也是大为惊恐,急忙召见诸将合力攻城。但是东晋朱序依然率军顽强抵抗,用弓箭土木石头固守城池,数次击退了前秦军,襄阳城的普通百姓甚至上城墙协助防守和修复城墙。
公元379年三月,前秦军攻打东晋襄阳城一年多后,守将朱序由于屡破秦军,逐渐滋生了骄傲自大情绪,加之秦军后撤很远,便怀疑他们不敢来了,城防松懈下来。但是城里面朱序的一个部将担心迟早被前秦攻陷,因而做了前秦的内应,结果趁前秦军攻城之际,打开了城门导致前秦军攻陷了襄阳城,守将朱序也被俘虏。苻坚赏识朱序的气节,仍任用他为将。由于襄阳城破,桓冲在战后引咎上疏请求解职,不过东晋朝廷不允。
(历时一年的襄阳之战也是前秦打得最为艰难的一次,因而之前有策略的苻坚也一改以往作风,对太子苻丕大发雷霆。襄阳城尽管攻下了,但是苻坚仍然有些骄纵目中无人。虽然这场淝水之战前的战役,东晋西边的门户襄阳城被攻陷,但东晋仍然上下一心以应对将来前秦与东晋的决战。)