辛卯之變發生在1231年的大蒙古國軍隊攻擊南宋的事件。
背景
成吉思汗遺囑：向宋借道，繞過金「關河防線」，經宋境攻打金的唐（今河南唐河縣）、鄧（今河南鄧縣），直逼金都南京（今河南開封）。金必調潼關守軍前往增援。待金援軍趕到時殲滅之。1230年秋，窩闊臺和其弟托雷各率軍分東西兩路圍攻金國鳳翔（今陜西省寶雞市鳳翔區），開始向南宋借道。
過程
十一月，托雷的一支騎兵，取陳倉道，進入南宋鳳州城下，遞交一封信後退回。信中提出借道、借師、借糧要求。以後，蒙軍不斷入宋境焚掠，「出沒自如」 。
1231年正月，托雷使者速不罕，與宋四川制置使桂如淵的代表在武休關談判，向宋方借道、借師、借糧。桂如淵答應借糧20萬斛；暫不確定是否借道等待朝廷回覆。桂如淵派使者隨速不罕返還「回報」，同時令興元（今陜西省漢中市）準備牛、羊、酒犒勞蒙軍。又下令宋兵不許擅自與蒙軍衝突，並命天水軍（今甘肅天水市天水鎮）和西河州（今甘肅省西和縣）的守軍退守七方關、仙人關。幻想換得和平。當時蜀口最北邊的天水軍城就遭到了蒙軍的攻擊，曹友聞以孤身突破蒙軍大營夜闖天水軍城。后被桂如淵下令率軍從天水軍城撤退到仙人關。曹友聞部走到峽口時，遇到一股蒙軍押著被俘的百姓和牲畜往回走。曹友聞軍佔據有利地形，派前軍統制屈信向蒙軍進攻。蒙軍措手不及。百姓和牲畜被曹友聞救了下來。曹友聞部到一個叫秦壩的地方時，又遇到一股蒙軍。蒙軍朝宋軍衝殺，左軍統制杜午迎戰，抵擋不住。曹友聞指揮部隊搶佔高地，佔據險要地形。蒙軍騎兵衝不過來，朝宋軍射箭。曹友聞冒箭雨，衝到最前線，指揮士兵向蒙軍還擊。同時，曹友聞又派屈信和張安國出戰，把蒙軍打退。曹友聞部到河池縣時，接桂如淵命令，轉七方關駐守。天水軍城再次遭蒙軍進攻。淪陷，此前被曹友聞解救的軍城百姓，全部被蒙軍屠殺。
二月，蒙軍攻陷鳳翔，宋廷拒絕蒙軍借道。三月，拖雷率3萬騎兵從鳳翔出發，取陳倉道，越秦嶺入宋境。桂如淵錯誤的認為蒙古軍會按照丁亥之變的行軍路線，西走吐蕃境內攻宋，遂將重兵佈置于西面的七方關，而「為東邊之要」的馬嶺僅佈置了忠義一千四百人屯守，使得從東道攻宋的數萬蒙古軍得以長驅直入。十八日，蒙軍在馬嶺堡（位於今陜西省鳳縣雙石鋪鎮）遇宋軍。宋守將忠義軍總管田燧，率1400名民兵與蒙軍血戰三日，彈盡糧絕戰死。蒙軍攻鳳州（今陜西鳳縣鳳州村）。知州李寔、通判張度、教授張叔寅組織抵抗。四月二十七日淪陷，李寔、張度、張叔寅殉職。蒙軍取連雲棧道。
五月，窩闊臺在官山九十九泉召集諸王大臣商議滅金方略。拖雷轉述了當年二月蒙古軍攻克鳳翔時降人李昌國所獻之計：「金主遷汴，所恃者黃河、潼關之險爾。若出寶雞，入漢中，不一月可達唐、鄧。金人聞之，寧不謂我師從天而下乎？」窩闊臺採納。會上蒙古正式確定置：窩闊臺自將中軍，由白坡南渡黃河，從正面進攻；斡陳那顏率左路軍由濟南西下；拖雷所將之右路軍，自鳳翔過寶雞，渡渭河，假道南宋四川境內沿漢水而下，進入河南。三路大軍約定於次年（1232）春會師汴梁，消滅金朝。
五月六日蒙古軍以輕師佯攻武休關，蒙軍兵分兩路，東路經華陽關前往洋州（今陜西省洋縣），屠城，洋州位居平地，無兵可守，桂如淵在鳳州失陷后急調金州都統司軍隊前往駐守。大批難民從興元、洋州方向涌向金州，使得宋軍未能及時抵達。知洋州高稼被迫退往黃金渡，洋州失陷。南路從陽明、黃竹小道繞過武休關直趨興元府（今陜西省漢中市）。宋守將權興元都統潘福逃跑。興元府成為孤城。利州戎帥、興元知府郭正孫率數十萬軍民撤出興元，取米倉山逃往四川，五月八日，于沙窩（漢中西南方向）遇蒙古軍，力戰一日身亡。百姓遭屠戮。高稼積極收攏潰軍，招募忠義民兵，於六月收復興元等處失地。
七月間蒙軍另一部取祁山道攻克宋同慶府（成州）、天水軍。知同慶府李沖戰死；八月又經過半個多月的苦戰，以慘重的傷亡攻克西和州、仙人關，知西和州陳寅、西和通判賈子坤、摧鋒軍統領楊銳殉國；宋「三關五州」 蜀口防禦體系被毀。當時桂如淵命令何進領軍退守到大安軍（軍治在今陜西寧強縣大安鎮）。何進與西河州知州陳寅有矛盾，接到調令后，讓利州副都統司摧鋒、軍統制楊銳帶著1000名忠義軍民兵留下來。何進帶上家眷和士兵走了。民心浮動，陳寅與推官、代理通判賈子坤誓死守衛州城。陳寅全家28人，包括3個兒子都在州城，以示與州城百姓共存亡心。賈子坤12個家人全都留在城裡。為穩定軍心，陳寅把家產拿出來分給軍人。攻擊西河州城的蒙軍號稱10萬，向州城東南門發動進攻。蒙軍在後面督戰，投降的宋軍擔任先鋒隊進攻。陳寅寫了一道檄文，想把降軍招撫過來。然後，拿起旗鼓，激勵將士。宋軍用箭、滾石重挫蒙軍。當晚，陳寅指揮全城軍民修復工事。第二天早上，蒙軍攻勢更猛。陳寅帶領忠義軍和敢死隊士兵拚殺一天一夜，交戰數十次，蒙軍退下休整。蒙軍多次進攻西河州城不下，砍伐樹木製造攻城器具，又增加兵力，陳寅向桂如淵求援。過了好幾天，上級派劉銳和忠義軍將領陳瑀等人率兵和民兵一萬多人救援。但劉銳走到七方關，陳瑀還沒抵達仇池縣，就以道路受阻按兵不動。忠義軍裨將劉卓，翻越城墻逃出城向蒙軍投降，告知水門那裡留有空隙。蒙軍集中兵力進攻水門。八月十四日，西河州城破，陳寅妻子杜氏服毒自盡。兩個兒子和兒媳，也相繼自殺。陳寅把他們的屍體收斂在一起焚化。換上官服，走上戰樓，望著京城臨安府（今浙江杭州市）方向，點起香燭說：「臣始謀守此城，為蜀藩籬。城之不存，臣死分也。臣不負國！臣不負國！」拔劍自刎。賓客幕僚28人自殺。陳寅另一個兒子最後趕來也想自殺。一個士兵把他抱住說不能讓忠臣沒有後代。士兵把他拖著，縋下城墻，結果摔斷了腿，也死了。賈子坤身穿官服，與全家12人一起自殺殉國。楊銳（一說王銳）帶領諸將與蒙軍廝殺戰死。西河州城居民近37.9萬人，全被屠殺。
十月又攻克七方關。加上之前武休關、階州、鳳州已經被攻破，至此，自吳玠仙人關大捷以來南宋在蜀口經營百年的三關五州防線土崩瓦解。十月十七日，托雷再派速不罕前往沔州（今陜西略陽），擁軍至青野原，正式向宋沔州軍都統張宣提 「借道、借糧」要求。南宋守將張宣讓部將馮擇偽降，誘殺速不罕。蜀口各處軍民「燒絕棧道」，以示不許蒙古軍過境。拖雷怒曰「彼昔潛茍夢玉來通好，遽自食言背盟乎。」命東路軍留駐興元、洋州；西路軍南下攻陷沔州、大安（今陜西寧強縣大安鎮）。
十月二十日蒙古軍攻陷沔州，沔州都統、權知州楊起、沔州通判王友仲戰死。蒙古軍西路由沔州南下，二十四日攻大安軍，大安宋軍全軍覆沒，「丁亥之變」時堅守西和州的利州副都統何進及麾下統制官全部殉國。蒙古軍撤屋為筏，沿嘉陵江「長驅深入，若踐無人之境」，連破葭萌（今四川廣元市昭化鎮）、西水（今四川南部縣西水鎮）、南部（今四川南部縣），一直打到四川腹地方才北返，與東路軍會合后東進金州。東路軍從沔州出發，向坐鎮利州的南宋蜀帥桂如淵以「師壓君境，誓不徒還，謂君不得不吾假也」的強硬口吻再次提出假道南鄭，由洋州、金州達河南唐州、鄧州，會師滅金的要求。桂如淵火速向朝廷請援，不組織有效抵抗，和利州漕臣安癸仲等人逃往川東合州，導致川北殘存宋軍各自為戰，直致宋於十月二十六日任命原知遂寧府李真到任。拖雷又派大將按竺邇，向桂如淵提出帶路。桂如淵只能答應。拖雷軍順利通過饒風關，順漢江東進，一路攻掠，
宋廷得桂如淵敗報，急令京湖帥陳賅派兵增援，陳賅認為蜀口防線固若金湯，侵入四川的只是小道滲入少數遊騎，只派宋春帶三千軍隊前往金州協防。十一月二五日，蒙古軍擺脫川北宋軍殘部糾纏，經饒鳳關直撲金州，擊敗當地駐軍，沿漢水東下，進入京湖邊面。陳賅聞訊后急調孟珙前往攔截，十二月二十五日，拖雷全軍在光化軍地界渡過漢水，進入金境。
十二月十七日，在光化軍（今湖北老河口市）騎馬橫渡漢江，二十日，渡江離開南宋領土，進入金國。
後果
拖雷軍進入金國，金軍果然從潼關調出僅剩的15萬精銳阻擊。托雷軍乘金軍剛來將其全殲于鈞州三峰山（位於今河南省禹州市）。金朝從此「不能國矣」。窩闊臺率軍乘機攻克潼關，突破金軍「關河防線」。金人被迫放棄關河防線和開封，南遷蔡州；宋朝意識到，金即將滅亡，宋必須在金亡前展現實力，擴大戰略縱深，為接下來的宋蒙戰爭做準備。蒙軍完成借道宋境、對金國戰略大迂迴的計劃，南宋蜀口地區一片廢墟。蒙古不僅摧毀了南宋經營百年的蜀口防線，而且深入到了巴蜀內地。「蜀口諸關蕩為平地，不可修復」，四川自此門戶大開。蒙古軍對嘉陵江沿岸破壞。蜀口宋軍後勤補給完全依靠嘉陵江水運，劍門關外沿江的沔州、大安軍、利州是川陜最重要的三個軍事重地。三州均遭蒙古軍佔領和破壞，此後嘉陵江水運無以為繼，只能重開陸運。蜀道艱險，陸運民夫往往十死三四，效率低下。新任蜀帥李埴收集各地潰軍，招募忠義，迅速收復失地，並和副帥趙彥吶（端平元年升任蜀帥）一道恢復。但直到闊端于端平二年（1235）秋再次大舉攻蜀前，元氣仍未恢復，宋蒙全面戰爭爆發后的短時間內陷落。南渡以後，四川總領所的收入，佔南宋財政總收入的四分之一以上，四川軍糧，達整個南宋的三分之一以上，故時人便有「蜀亡則宋亡」之嘆。一貫恃和茍安的南宋權相史彌遠對蒙古的政策是企圖相安無事，桂如淵作為其親信，處處忍讓蒙古，「令諸將毋得擅出兵沮和好」，待蒙古軍進攻，又丟下川北軍民先行逃跑。川陜宋軍「偏將小校陣亡戰沒者不復以數計」，蒙古軍破城寨一百四十餘處，僅明確記載發生大規模屠城就有天水、同慶、西和、興元、洋州五處。「三關之外，生聚一空」 ，「千里之地，莽為丘墟」，「十七州生靈死者不知其幾千萬」。
兩年後，宋、蒙兩軍南北夾擊消滅了金國。