1260年,忽必烈当上蒙古大汗以后,开始积极谋划进攻南宋。
1267年,忽必烈接受南宋降将刘整的建议,准备先进攻南宋的门户襄阳、樊城(现在的湖北襄樊),然后再派大军顺流而下,攻取临安,一举灭宋。
襄阳、樊城地处南阳盆地的南端,汉江从两城中间流过,汇入长江。宋军在汉水中立木桩,用铁索连接,上面架设浮桥,两城可以相互救援。襄阳地处险要,西临关陕,东达江淮,连接荆豫,地理位置十分重要,是长江中游的重要屏障,是南宋的咽喉、门户。
长期以来,南宋一直大力经营襄阳,储备了大量的粮草、军械,驻扎了大量的军队。
至元五年(1268年)九月,忽必烈派都元帅阿术、刘整率军进围襄阳、樊城,派枢密副使史天泽掌管军务。
蒙古军针对襄樊的设防以及宋军善于守城、水战的情况,采取了筑堡连城、长期围困、围城打援、待机破城的战法。
蒙古军先在鹿门山(现在的襄樊东南)、白河口(现在的襄樊东北)筑堡,切断了宋军南北之间的联系。后来又在汉水中筑实心台(现在的东敌台),还有立栅栏,以断宋军的水上通道。
蒙古军又在万山(现在的襄樊西)以筑城阻止宋军东来救援,在灌子滩(现在的襄樊南)立栅栏阻止宋军西来救援。
自万山到百丈山(现在的湖北襄樊南)筑起长围,并筑岘首山、虎头山等城,屯兵10万围城,形成了对襄樊的严密包围圈。
当时南宋丞相贾似道把持朝政,昏庸腐败,因曾与忽必烈签订割地称臣的密约,所以不派得力将领赴援,并严密封锁消息。
襄阳守将吕文焕曾多次组织突围,企图摆脱困境,但均以失败告终,襄阳与外界的联系完全断绝。
至元六年(1269年)三月,南宋京湖都统张世杰率军救援襄樊,但在赤滩圃(现在的襄樊东南汉水中)被蒙古军击败。
七月,南宋沿江制置副使夏贵率水军5万,战船3000艘,乘秋雨水涨,向襄阳输送粮草,但也在新堡(现在的湖北襄樊南)遭遇蒙古军伏兵,遭到水陆夹击,大败。
七年二月,吕文焕为摆脱困境,再次率步骑15万人,战船百艘,突袭万山堡,但被蒙古万户张弘范击败,吕文焕只好率军死守。