襄、樊失陷,朝中震动。给事中陈宜中上书,请斩怯弱逃跑的范文虎,但贾似道只降了范文虎的官职。监察御史陈文龙、太府寺丞陈仲微、京湖制置使汪立信等上书,请求追究襄、樊失守的责任。贾似道大为恼怒,将上书的大臣全部贬逐出朝。
就在贾似道倒行逆施之时,在位十年的宋度宗病死,时年三十五岁。太后谢道清召大臣商议立帝。众人认为杨淑妃所生赵昰年长当立,贾似道却拥立全皇后的四岁幼子赵显,于是立为宋恭帝。虽然名义上由谢太后垂帘听政,但贾似道依然独专朝政。
元军攻下襄、樊后,元世祖忽必烈召阿术等还朝。阿术建议,宋朝正虚弱,应乘势进攻,现在不灭宋,时不再来。于是元世祖下诏,水陆并进,大举灭宋。元兵二十万,由左丞相伯颜统领。伯颜生长于伊儿汗国,因入朝奏事,被元世祖留用。伯颜、阿术领一军,由襄阳入汉水过长江,以降将吕文焕为先锋。史天泽也是军中统帅,但在进军途中病死。右丞相博罗欢以及阿答海、刘整、塔出、董文炳领另一军,自东道取扬州,以刘整为先锋。
咸淳十年(1274年)十二月,阿术军自汉水渡江,宋将夏贵战败逃跑,鄂州都统程鹏飞投降。伯颜留阿里海涯以四万兵守鄂州,自领大军东下,直指临安。
鄂州失守后,群臣纷纷上书,要求贾似道亲自出兵抗元,贾似道被迫亲征,他率领诸路精兵十三万,还有大批装载着无数金帛、器甲和给养的船只,甚至带着妻妾,轴舻衔接,绵延百余里。时任淮西安抚制置使的夏贵见过贾似道后,不谈抗敌大计,却从袖中取出一张字条交给贾似道。上面竟然写着:“宋历三百二十年。”此时,宋朝历时已近三百二十年,夏贵的意思是暗示宋朝国势已尽。贾似道心照不宣,竟然点头默许。
元军一路势如破竹,黄州、江州、德安、六安等地宋朝守将望风而降。宋将范文虎也在安庆不战而降,并随伯颜入寇临安。
贾似道率领的宋军最终与元军在池州下游的丁家洲遭遇,孙虎臣、夏贵出战失败而逃,阿术挥军乘胜追击,贾似道乘小船逃到扬州。接着,镇江、宁国、隆兴、江阴等地宋将弃城逃跑。太平、和州、无为的守将相继投降。宋朝沿江制置大使、建康守臣赵溍逃跑。江淮招讨使汪立信退至高邮,自杀殉国。元军陷绕州,知州唐震、前宰相江万里不屈自杀。
贾似道败逃后,上书太皇太后谢道清,请朝廷立即迁都,由此招来更大的民愤。好投机的宰相陈宜中趁机上书,请斩贾似道。谢道清将贾似道罢官,贬往循州(今广东龙川)安置,贾似道半路被押送公差所杀。
伯颜率大军逼近临安时,临安守卫空虚。谢道清不得不下诏,号召各地起兵勤王。立时响应只有张世杰和文天祥,但宰相陈宜中对张世杰不信任,因张世杰曾为张柔部将,而元军主将张弘范正是张柔的儿子,对文天祥又不加重视,认为他统率的是乌合之众,不准他入卫临安。在大军压境之时,南宋大臣如曾渊子、文及翁、倪普等数十人都相继逃跑。谢道清除了怒骂,别无他法。
元军继续进军,湖北制置使高达以江陵降元。元军顺长江东下,所过之处,宋朝守将相继投降。只有攻打扬州时,守将李庭芝、姜才拒降死守。宋将张世杰与刘师勇、孙虎臣等结集战船万余艘,在焦山与元军阿术、张弘范部大战,想以此来扭转局面,但宋军大败。后孙虎臣在泰州陷落时自杀。文天祥、张世杰商议再战,但宰相陈宜中一意求降,不予采纳。另一宰相(左相)留梦炎则弃官逃跑。
景炎元年(1276年)初,元军阿里海涯部围攻潭州(今湖南长沙)三个月后,潭州城破。知州李芾坚持到最后。元兵入城,李芾不愿做俘虏,让部下沈忠将他及全家杀死。随后,沈忠也把自己一家杀死,最后自刎殉国。
潭州破后,又有十多个郡县相继降元,宋朝已经是危在旦夕。文天祥、张世杰请皇室转移海上避难,由他们领兵背城一战,但陈宜中不许。太皇太后、陈宜中先后派宗正少卿陆秀夫、监察御史刘岊到元军求降,随后又送上传国玉玺和宋恭帝的降表。在决定降元同时,太皇太后命秀王赵与择、杨淑妃等护从益王赵昰和广王赵昺出海。伯颜接到传国玉玺和降表,要求宰相陈宜中来军营商议投降事。陈宜中害怕被杀,趁黑夜逃往温州。张世杰、刘师勇见南宋皇室决意投降,临安难保,于是领兵南下,准备继续抗元。刘师勇到海上后,见败局难以挽回,忧愤纵酒而死。