南宋祥兴二年(1279)正月,大将张弘范率元军攻至崖门。元军浩浩荡荡陆续抵达崖山,对南宋形成三面包围之势。
顶着巨大压力,南宋大将张世杰昼夜苦思破敌之策。有幕僚向张世杰建议,应该先占领海湾出口,保护向西方的撤退路线。但张世杰为了防止士兵逃亡,否决了这一建议,并下令尽焚陆地上的宫殿、房屋、据点。他还下令将千余艘船只以"连环船"的办法用大绳索一字形连贯在海湾内,并且把赵昺的"龙舟"放在军队中间。
元军以小船载茅草和膏脂等易燃物品,乘风纵火冲向宋船。但宋船皆涂泥,并在每条船上横放一根长木,以抵御元军的火攻。元朝水师火攻不成,便封锁海湾,又以陆军断绝宋军汲水及砍柴的道路。宋军因而吃干粮十余日,饮海水的士兵呕泄不止。但即便如此,张世杰还是率苏刘义和方兴日大战元军。张弘范擒张世杰的外甥韩某,让其多次招降张世杰,都未能成功。
s
祥兴二年(1279)二月六日癸未,张弘范预备猛攻。元军中有人建议先用火炮,不过张弘范认为火炮可能打乱宋军的一字阵型,令其容易撤退。第二天,张弘范将其军分成四路,宋军的东、南、北三面皆驻一军,张弘范则自领一军与宋军对峙,并以奏乐为总攻讯号。最初北军乘潮进攻宋军失败,李恒等顺潮而退。之后元军假装奏乐,宋军以为元军正在举办宴会,稍稍松懈。
正午时段,张弘范的水师开始从正面进攻。接着元军用布遮蔽预先建成并埋下伏兵的船楼,以鸣金为进攻讯号。元军各伏兵负盾俯伏,在矢雨下驶近宋船。两边船舰接近后,元军鸣金撤布交战,一时间连破七艘宋船。宋师大败,元军一路打到宋军中央。这时张世杰见大势已去,便抽调精兵,和苏刘义带领的十余只船舰斩断大索突围而去。
当时幼帝赵昺的船在军队中间,四十三岁的陆秀夫见宋军无法突围,便背着八岁的赵昺投海,随行十多万军民亦相继跳海。战后,十余万具尸体浮海。张世杰希望用杨太后的名义再找宋朝赵氏后人为主,以图后举。但杨太后在听闻宋帝赵昺的死讯后亦赴海自杀。不久,张世杰也在大风雨中不幸溺卒于平章山下(约今广东省阳江市西南的海陵岛对面海面)。
崖门海战后的第二天,即二月七日早晨,百姓们从海上的十万具浮尸中找到陆秀夫,而小皇帝赵昺的尸体则为元军寻得。元军只见一眉清目秀的小儿身穿龙袍,头戴皇冠,身上还挂着一个玉玺。元兵将玉玺交给张弘范,张弘范确认这小儿是赵昺,想派人寻回他的遗体,然而赵昺的尸体已经下落不明。据说尸体被百姓埋葬在了广东深圳赤湾村里,至今仍存。
崖山海战后,宋室覆亡。元将张弘范命人在崖山岩壁上雕刻了"镇国大将军张弘范灭宋于此"十二个大字。大明成化二十二年(1486),御史徐瑁对奇石上十二字深恶痛绝,命人除去,欲改书"宋丞相陆秀夫死于此"九字。而陈白沙认为宋亡时死者十数万,不独陆秀夫,宜书"宋丞相陆秀夫负帝沉此石下"。因二人争辩不下,终未刻成。
有传说,陈白沙到崖门凭吊时,在碑首加上了一个"宋"字,碑文变成"宋镇国大将军张弘范灭宋于此"。但其实此传不实,陈白沙知道张弘范虽是汉人,但从未做过宋将。解放初,原凿字的奇石被航道部门炸毁。1964年秋,新会县人委请田汉同志书写"宋少帝与丞相陆秀夫殉国于此"十三个行草大字,刻在近岸的奇石上。人们终于又把这饶有纪念意义的碑石树起。
崖山之战是中国古代军事史上一次较大规模的海战,在中国海战史上占有重要地位。它也是宋朝对蒙古侵略者的最后一次有组织的抵抗,十万余人投海殉难,宁死不降。此战后,中国在历史上第一次完全沦陷于外族。
今天珠三角地区有很多三忠庙和念宋亭,近代爱国人士在民族危亡之际也借用念宋亭来表现自己的民族气节,鼓舞爱国士气。
大宋祥兴二年(1279)农历二月初六爆发的崖山之战,从战术层面看来,张世杰、陆秀夫等人制定了不恰当的作战部署,因而他们对战役失败负有不可推卸的责任。
但他们在绝境中所表现出来的民族气节和那种知其不可为而为之的勇气,让人叹服。南宋虽然覆没,但宋人输得是这样的悲壮,这样有节烈之气。
正如周总理曾说:"崖山这个地方的历史古迹是有意义的,宋朝虽然灭亡了,但当时许多人继续坚持抗元斗争,保持了气节。"