辛卯之变发生在1231年的大蒙古国军队攻击南宋的事件。
背景
成吉思汗遗嘱：向宋借道，绕过金“关河防线”，经宋境攻打金的唐（今河南唐河县）、邓（今河南邓县），直逼金都南京（今河南开封）。金必调潼关守军前往增援。待金援军赶到时歼灭之。1230年秋，窝阔台和其弟托雷各率军分东西两路围攻金国凤翔（今陕西省宝鸡市凤翔区），开始向南宋借道。
过程
十一月，托雷的一支骑兵，取陈仓道，进入南宋凤州城下，递交一封信后退回。信中提出借道、借师、借粮要求。以后，蒙军不断入宋境焚掠，“出没自如” 。
1231年正月，托雷使者速不罕，与宋四川制置使桂如渊的代表在武休关谈判，向宋方借道、借师、借粮。桂如渊答应借粮20万斛；暂不确定是否借道等待朝廷回复。桂如渊派使者随速不罕返还“回报”，同时令兴元（今陕西省汉中市）准备牛、羊、酒犒劳蒙军。又下令宋兵不许擅自与蒙军冲突，并命天水军（今甘肃天水市天水镇）和西河州（今甘肃省西和县）的守军退守七方关、仙人关。幻想换得和平。当时蜀口最北边的天水军城就遭到了蒙军的攻击，曹友闻以孤身突破蒙军大营夜闯天水军城。后被桂如渊下令率军从天水军城撤退到仙人关。曹友闻部走到峡口时，遇到一股蒙军押着被俘的百姓和牲畜往回走。曹友闻军占据有利地形，派前军统制屈信向蒙军进攻。蒙军措手不及。百姓和牲畜被曹友闻救了下来。曹友闻部到一个叫秦坝的地方时，又遇到一股蒙军。蒙军朝宋军冲杀，左军统制杜午迎战，抵挡不住。曹友闻指挥部队抢占高地，占据险要地形。蒙军骑兵冲不过来，朝宋军射箭。曹友闻冒箭雨，冲到最前线，指挥士兵向蒙军还击。同时，曹友闻又派屈信和张安国出战，把蒙军打退。曹友闻部到河池县时，接桂如渊命令，转七方关驻守。天水军城再次遭蒙军进攻。沦陷，此前被曹友闻解救的军城百姓，全部被蒙军屠杀。
二月，蒙军攻陷凤翔，宋廷拒绝蒙军借道。三月，拖雷率3万骑兵从凤翔出发，取陈仓道，越秦岭入宋境。桂如渊错误的认为蒙古军会按照丁亥之变的行军路线，西走吐蕃境内攻宋，遂将重兵布置于西面的七方关，而“为东边之要”的马岭仅布置了忠义一千四百人屯守，使得从东道攻宋的数万蒙古军得以长驱直入。十八日，蒙军在马岭堡（位于今陕西省凤县双石铺镇）遇宋军。宋守将忠义军总管田燧，率1400名民兵与蒙军血战三日，弹尽粮绝战死。蒙军攻凤州（今陕西凤县凤州村）。知州李寔、通判张度、教授张叔寅组织抵抗。四月二十七日沦陷，李寔、张度、张叔寅殉职。蒙军取连云栈道。
五月，窝阔台在官山九十九泉召集诸王大臣商议灭金方略。拖雷转述了当年二月蒙古军攻克凤翔时降人李昌国所献之计：“金主迁汴，所恃者黄河、潼关之险尔。若出宝鸡，入汉中，不一月可达唐、邓。金人闻之，宁不谓我师从天而下乎？”窝阔台采纳。会上蒙古正式确定置：窝阔台自将中军，由白坡南渡黄河，从正面进攻；斡陈那颜率左路军由济南西下；拖雷所将之右路军，自凤翔过宝鸡，渡渭河，假道南宋四川境内沿汉水而下，进入河南。三路大军约定于次年（1232）春会师汴梁，消灭金朝。
五月六日蒙古军以轻师佯攻武休关，蒙军兵分两路，东路经华阳关前往洋州（今陕西省洋县），屠城，洋州位居平地，无兵可守，桂如渊在凤州失陷后急调金州都统司军队前往驻守。大批难民从兴元、洋州方向涌向金州，使得宋军未能及时抵达。知洋州高稼被迫退往黄金渡，洋州失陷。南路从阳明、黄竹小道绕过武休关直趋兴元府（今陕西省汉中市）。宋守将权兴元都统潘福逃跑。兴元府成为孤城。利州戎帅、兴元知府郭正孙率数十万军民撤出兴元，取米仓山逃往四川，五月八日，于沙窝（汉中西南方向）遇蒙古军，力战一日身亡。百姓遭屠戮。高稼积极收拢溃军，招募忠义民兵，于六月收复兴元等处失地。
七月间蒙军另一部取祁山道攻克宋同庆府（成州）、天水军。知同庆府李冲战死；八月又经过半个多月的苦战，以惨重的伤亡攻克西和州、仙人关，知西和州陈寅、西和通判贾子坤、摧锋军统领杨锐殉国；宋“三关五州” 蜀口防御体系被毁。当时桂如渊命令何进领军退守到大安军（军治在今陕西宁强县大安镇）。何进与西河州知州陈寅有矛盾，接到调令后，让利州副都统司摧锋、军统制杨锐带着1000名忠义军民兵留下来。何进带上家眷和士兵走了。民心浮动，陈寅与推官、代理通判贾子坤誓死守卫州城。陈寅全家28人，包括3个儿子都在州城，以示与州城百姓共存亡心。贾子坤12个家人全都留在城里。为稳定军心，陈寅把家产拿出来分给军人。攻击西河州城的蒙军号称10万，向州城东南门发动进攻。蒙军在后面督战，投降的宋军担任先锋队进攻。陈寅写了一道檄文，想把降军招抚过来。然后，拿起旗鼓，激励将士。宋军用箭、滚石重挫蒙军。当晚，陈寅指挥全城军民修复工事。第二天早上，蒙军攻势更猛。陈寅带领忠义军和敢死队士兵拼杀一天一夜，交战数十次，蒙军退下休整。蒙军多次进攻西河州城不下，砍伐树木制造攻城器具，又增加兵力，陈寅向桂如渊求援。过了好几天，上级派刘锐和忠义军将领陈瑀等人率兵和民兵一万多人救援。但刘锐走到七方关，陈瑀还没抵达仇池县，就以道路受阻按兵不动。忠义军裨将刘卓，翻越城墙逃出城向蒙军投降，告知水门那里留有空隙。蒙军集中兵力进攻水门。八月十四日，西河州城破，陈寅妻子杜氏服毒自尽。两个儿子和儿媳，也相继自杀。陈寅把他们的尸体收敛在一起焚化。换上官服，走上战楼，望着京城临安府（今浙江杭州市）方向，点起香烛说：“臣始谋守此城，为蜀藩篱。城之不存，臣死分也。臣不负国！臣不负国！”拔剑自刎。宾客幕僚28人自杀。陈寅另一个儿子最后赶来也想自杀。一个士兵把他抱住说不能让忠臣没有后代。士兵把他拖着，缒下城墙，结果摔断了腿，也死了。贾子坤身穿官服，与全家12人一起自杀殉国。杨锐（一说王锐）带领诸将与蒙军厮杀战死。西河州城居民近37.9万人，全被屠杀。
十月又攻克七方关。加上之前武休关、阶州、凤州已经被攻破，至此，自吴玠仙人关大捷以来南宋在蜀口经营百年的三关五州防线土崩瓦解。十月十七日，托雷再派速不罕前往沔州（今陕西略阳），拥军至青野原，正式向宋沔州军都统张宣提 “借道、借粮”要求。南宋守将张宣让部将冯择伪降，诱杀速不罕。蜀口各处军民“烧绝栈道”，以示不许蒙古军过境。拖雷怒曰“彼昔潜苟梦玉来通好，遽自食言背盟乎。”命东路军留驻兴元、洋州；西路军南下攻陷沔州、大安（今陕西宁强县大安镇）。
十月二十日蒙古军攻陷沔州，沔州都统、权知州杨起、沔州通判王友仲战死。蒙古军西路由沔州南下，二十四日攻大安军，大安宋军全军覆没，“丁亥之变”时坚守西和州的利州副都统何进及麾下统制官全部殉国。蒙古军撤屋为筏，沿嘉陵江“长驱深入，若践无人之境”，连破葭萌（今四川广元市昭化镇）、西水（今四川南部县西水镇）、南部（今四川南部县），一直打到四川腹地方才北返，与东路军会合后东进金州。东路军从沔州出发，向坐镇利州的南宋蜀帅桂如渊以“师压君境，誓不徒还，谓君不得不吾假也”的强硬口吻再次提出假道南郑，由洋州、金州达河南唐州、邓州，会师灭金的要求。桂如渊火速向朝廷请援，不组织有效抵抗，和利州漕臣安癸仲等人逃往川东合州，导致川北残存宋军各自为战，直致宋于十月二十六日任命原知遂宁府李真到任。拖雷又派大将按竺迩，向桂如渊提出带路。桂如渊只能答应。拖雷军顺利通过饶风关，顺汉江东进，一路攻掠，
宋廷得桂如渊败报，急令京湖帅陈赅派兵增援，陈赅认为蜀口防线固若金汤，侵入四川的只是小道渗入少数游骑，只派宋春带三千军队前往金州协防。十一月二五日，蒙古军摆脱川北宋军残部纠缠，经饶凤关直扑金州，击败当地驻军，沿汉水东下，进入京湖边面。陈赅闻讯后急调孟珙前往拦截，十二月二十五日，拖雷全军在光化军地界渡过汉水，进入金境。
十二月十七日，在光化军（今湖北老河口市）骑马横渡汉江，二十日，渡江离开南宋领土，进入金国。
后果
拖雷军进入金国，金军果然从潼关调出仅剩的15万精锐阻击。托雷军乘金军刚来将其全歼于钧州三峰山（位于今河南省禹州市）。金朝从此“不能国矣”。窝阔台率军乘机攻克潼关，突破金军“关河防线”。金人被迫放弃关河防线和开封，南迁蔡州；宋朝意识到，金即将灭亡，宋必须在金亡前展现实力，扩大战略纵深，为接下来的宋蒙战争做准备。蒙军完成借道宋境、对金国战略大迂回的计划，南宋蜀口地区一片废墟。蒙古不仅摧毁了南宋经营百年的蜀口防线，而且深入到了巴蜀内地。“蜀口诸关荡为平地，不可修复”，四川自此门户大开。蒙古军对嘉陵江沿岸破坏。蜀口宋军后勤补给完全依靠嘉陵江水运，剑门关外沿江的沔州、大安军、利州是川陕最重要的三个军事重地。三州均遭蒙古军占领和破坏，此后嘉陵江水运无以为继，只能重开陆运。蜀道艰险，陆运民夫往往十死三四，效率低下。新任蜀帅李埴收集各地溃军，招募忠义，迅速收复失地，并和副帅赵彦呐（端平元年升任蜀帅）一道恢复。但直到阔端于端平二年（1235）秋再次大举攻蜀前，元气仍未恢复，宋蒙全面战争爆发后的短时间内陷落。南渡以后，四川总领所的收入，占南宋财政总收入的四分之一以上，四川军粮，达整个南宋的三分之一以上，故时人便有“蜀亡则宋亡”之叹。一贯恃和苟安的南宋权相史弥远对蒙古的政策是企图相安无事，桂如渊作为其亲信，处处忍让蒙古，“令诸将毋得擅出兵沮和好”，待蒙古军进攻，又丢下川北军民先行逃跑。川陕宋军“偏将小校阵亡战没者不复以数计”，蒙古军破城寨一百四十余处，仅明确记载发生大规模屠城就有天水、同庆、西和、兴元、洋州五处。“三关之外，生聚一空” ，“千里之地，莽为丘墟”，“十七州生灵死者不知其几千万”。
两年后，宋、蒙两军南北夹击消灭了金国。