自宋蒙端平开战以来,蒙古军一再深入四川腹地。巴蜀一失,敌军顺流而下,南宋长江防线就将形同虚设,因而构筑长江上游的防务体系,事关抗蒙战争的全局。嘉熙三年(1239年)秋,蒙古大军攻入川东,直指夔门。理宗急命孟珙率师入川救援,宋军在归州(今湖北秭归)、巴东(今属湖北)阻击住了蒙军,解了燃眉之急。

事后,孟珙主张在夔州设立制置副司,协调指挥涪州(今重庆涪陵)、万州(今重庆万县)以下的长江防御,筑起第一防线;在鼎州(今湖南常德)、澧州(今湖南醴陵)屯驻重兵,形成第二防线;在辰州(今湖南沅陵)、沅州(今湖南芷江)、靖州(今湖南靖县)、郴州(今属湖南)和桂阳军(今湖南桂阳)构建第三防线。这一防御体系极具战略眼光,已预计到蒙古军可能迂回大理国,从广西、湖南对南宋进行战略包围。

次年,孟珙任四川宣抚使兼知夔州,不久又兼京湖安抚制置使,统一指挥四川、京湖两大战场的防务,实施构筑第一、二道防线。淳祐元年(1241年),撤销四川宣抚司,但将夔州路从四川制置司划归京湖制置司,孟珙以京湖安抚制置大使兼夔州路制置大使,置司峡州(今湖北宜昌),仍全面主持川鄂防线。

这年,成都再次被蒙军攻陷,四川告急。次年,理宗决定派余玠出任四川安抚制置使兼四川总领,主持四川军政,置司重庆。这是因为成都地处平原易攻难守,且数度沦陷,凋敝不堪,而重庆依山傍江,扼长江之咽喉,在宋蒙战争中的战略地位明显上升。

余玠以恢复全蜀为己任,上任伊始就设招贤馆,礼贤下士,广揽人才,王坚、张珏皆入其幕下。早在嘉熙四年(1240年),为避蒙古兵锋,四川制置副使彭大雅筑重庆城时,就在合州(今重庆合川)钓鱼山筑砦,作为重庆的屏障。余玠入川不久,就采纳了播州(今贵州桐梓)冉琎、冉璞兄弟的建议,根据四川特殊的地形条件,在合州钓鱼山依山筑城,积粟治军,迁州城于此,以阻挡蒙古骑兵的攻袭。

余玠随后又把构筑山城的做法推广到其他州郡,先后建成十余座山城,著名的有云顶(今四川金堂南)、营山(今四川营山西)、大获(今四川苍溪东南)、苦竹(今四川剑阁北)、青居(今四川南充南)、得汉(今四川通江东)、天生(今重庆万县西)、白帝(今重庆奉节东)等。余玠的后继者王坚、张珏继续修筑着山城,总数达八十余处。这些建在四川主要水系上的山城,完整构建起一个如臂使指,气势联络的山城防御体系,在其后抗蒙战争中发挥了重大作用。

余玠还总结了一套抗蒙斗争的经验:一曰以逸待劳,不可轻战;二曰聚保山险,不居平地;三曰多用夜劫,不可昼战;四曰收聚粮食,毋以资敌。史称余玠治蜀多年,“军得守而战,民得业而耕”,抗蒙形势出现前所未有的转机。他便主动出击,恢复失地。淳祐十一年末,王坚收复兴元府(今陕西汉中),宋军重新在蜀口之外站住了脚跟。

利州都统制王夔恃功跋扈,余玠将其处死,派部将杨成代领其军,利州都统司则派出了本司统制姚世安前去接替。四川武将桀骜骄横,主将去职举代部属接掌军队也久成风气。余玠决心革除这种弊端,再派一姓金的都统制率兵前往接管,不料姚世安竟武力抗拒。

这时,余玠的支持者左相郑清之病故,谢方叔升任左相,他的侄子恰好避乱在利州都统司所在的云顶山上,姚世安就请他在朝中为自己说话。谢方叔偏听偏信,在理宗面前胡说余玠飞扬跋扈,居心叵测。

有吴曦、安丙的前例,有祖宗的家法,理宗也起了疑心,宝祐元年(1253年),下诏召回余玠。余玠对朝廷颠倒黑白的处理义愤填膺,接诏以后,服毒自杀。余玠治蜀,厥功甚伟,赍志而殁,壮士扼腕。川蜀百姓闻其死讯无不悲慕如失父母,好不容易有一个人才,朝廷却轻信谗言,连一个余玠都用不得。

淳祐十一年,蒙哥汗即位,他逐渐将战略重点移向南宋。宝祐元年,他派忽必烈分三路进攻云南,次年灭大理国。宝祐三年,蒙古灭安南,最终完成对南宋的战略大包围。宝祐五年,蒙军试图从安南北上广西,南宋派出李曾伯任广南制置使。他此前在京湖安抚制置使任上,曾整顿孟珙死后留下的防务系统,再度收复襄阳和樊城,富有抗蒙战争的经验。到任以后他成功扼住了蒙古军北上的进路,确保了中南腹地的安全。两淮战场一直是南宋防御的重点,四川依山筑城的经验也因地制宜推广到两淮,蒙古军的进攻很难得手。

宝祐六年,蒙哥汗决定三路攻宋:自己亲率主力四万攻打四川,然后出峡东下;塔察儿领兵南下,进攻荆襄;兀良合台从安南出兵,经广西北上;三路大军会师鄂州(今湖北武昌),再合力东攻临安。

蒙哥主力入大散关,由利州(今四川广元)直取剑门,经过近一年艰苦攻战,岁末打到钓鱼城下。这时四川已大部沦陷,王坚以兴元都统制兼知合州。他到任后就发动军民重新修缮钓鱼城。

钓鱼城周长十余里,山顶地势平旷开阔,上有充足的水源与足够的良田,军民耕战结合而无后顾之虞。钓鱼山高近四百米,嘉陵江与渠江环绕其南、北、西三面,山腰据险筑起两道二三丈高的城墙,又筑“一字城”直达嘉陵江岸,可安然保持与外界的联系。当时,迁入钓鱼城内避乱的民众多达十余万。

蒙哥派降将晋国宝前来劝降,被王坚在钓鱼山阅兵场当众处死。开庆元年(1259年)二月,蒙古大军渡过渠江,蒙哥亲自督战攻城,双方攻守战打得十分激烈,但蒙军始终无法得手。四月,蒙古军一度袭破一字城外城,但旋即被宋军击退。

蒙古军旷日持久,师老兵疲,时值盛暑水土不服,疫疾蔓延。宋军以逸待劳,不时夜袭敌营。南宋政府听说蒙军入川,即派吕文德出任四川制置副使兼知重庆府,负责川蜀抗蒙大局。五月,吕文德率战船千艘驰援合州,遭到蒙将史天泽的邀击,只得返回重庆。

六月,蒙将汪德臣单骑到钓鱼城下招降,城上发飞石将其击死,蒙军士气越发低落。相反,王坚则命守城宋军向城下蒙古军投掷鲜鱼面饼,并致书说:“你们北兵可烹鱼食饼,再攻十年,城亦不可得!”蒙哥见钓鱼城固若金汤,久攻不下,只得黯然撤军,命主力转攻重庆,自己则死在退兵途中的温汤峡(今重庆北温泉)。

关于蒙哥汗的死因,众说纷纭,莫衷一是。一说病死,所染即为痢疾;一说中飞石或飞矢而死;一说因炮风所震,得疾而死。一般认为,蒙哥是在钓鱼城东瞭望指挥时被炮石击伤而死的。据说,蒙哥临死遗言:“若克此城,当尽屠之。”为了发泄攻城失利的愤懑,蒙古军在护丧所经途中,杀无辜平民二万余人。

蒙哥一死,各路蒙军先后北撤,南宋政权转危为安。其后十余年间,宋蒙战争未发生重大战役,这是因为忽必烈继承汗位后,专注于解决内部纷争与推进封建化进程。封建化进程弱化了蒙古军的原始野蛮性,也相应减轻了宋元替代过程中社会生产力的破坏强度。

钓鱼城之战是南宋方面自宋蒙战争以来取得的最大胜利,不但有力阻扼了蒙古军的凌厉攻势,挽救了川蜀的危局,而且为余玠奠立的山城防御体系取得了重要的实战经验,极大鼓舞了南宋军民的抗蒙斗志。