228年春天,蜀军准备好北伐,督前部,领丞相司马、凉州刺史魏延提出子午谷之计,据魏略记载:魏延建议由其率精兵五千,负粮五千,直从褒中出,循秦岭而东,当子午而北,不过十日可进军至长安。镇守长安的魏国安西将军夏侯楙怯而无谋,“闻延奄至,必乘船逃走”,长安唾手可得。魏国聚集军队“尚二十许日”,诸葛亮大军可趁机“从斜谷来,必足以达”。如此便可一举平定长安以西。但诸葛亮认为此计不定因素太多,未必能如此顺利,一旦失利将陷于进退维谷之地,最终选择了“安从坦道,可以平取陇右,十全必克而无虞”,确立了先攻占陇右作为进攻跳板的战略。
蜀章武三年( 223年 )
四月﹐刘备白帝托孤﹐
五月﹐刘禅即位﹐封诸葛亮为武乡侯;蜀改元建兴。朱褒、雍闿、高定等四郡背叛。
十一月﹐邓芝赴吴﹐重修旧好。魏国曹仁、曹彰、贾诩皆于此年死。
蜀建兴二年( 224年 )夏﹐东吴张温聘蜀。
九月﹐曹丕率戎卒十余万东巡﹐东吴徐盛献计沿江筑假城﹐漫延数百里﹐一夕而成;曹丕望大江﹐见无隙可图﹐于是退兵。
蜀建兴三年( 225年 )诸葛亮征南四郡﹐皆平。收其劲卒﹐分为宾叟、青羌、突将、无前、无当五部﹐号 称飞军。
蜀建兴四年( 226年 )李严在江州筑大城。曹丕死。曹叡即位﹐以曹真为大将军﹐华歆为太尉﹐司马懿督 荆豫诸军镇于宛城。孙权攻江夏﹐为文聘所拒。
蜀建兴五年( 227年 )诸葛亮率诸军北驻汉中﹐屯于沔北之阳平、白马山﹐临行上《前出师表》。曹叡闻诸葛亮驻汉中﹐欲先伐之﹐散骑常侍孙资劝阻﹐曹魏改采守势。东吴韩当之子韩综率其众降魏。
十二月﹐孟达反魏投蜀。诸葛亮遣偏将下西城、木兰寨救之﹐司马懿阻援打点﹐遂拔新城﹐斩孟达。
诸葛亮为什么要出兵陇右 ?宋代名将虞允文曾评西北形势云︰“ 关中天下之上游﹐陇右关中之上游﹐故欲控有关中﹐宜先控制陇右。陇右即陇山以西﹐今甘肃黄河以东地区。陇右形势较关中高﹐故曰关中之上游﹐为控领关中的制高位置。此地人民习尚气力﹐勤耕稼﹐修战备﹐自古为用兵之地。
光祁山一带﹐就有民万户。地方富庶﹐与屡遭战乱的关中地区相比﹐相差甚大。曹操也因地方资源丰富﹐将汉朝三郡的建置扩为六郡﹐是为陇右六郡﹐计有︰陇西郡八县﹐狄道为郡治。天水郡十县﹐上邽﹑祁山﹑街亭均属于此郡。南安郡三县﹐以騵道为郡治。广魏郡两县﹐临渭县﹐平襄县。阴平郡两县﹐与武都郡在蜀建兴七年(229) 年被诸葛亮攻下。
武都郡五县﹐下辨﹐建威﹐故道﹐皆在此。下辨为郡治。此地的战略位置重要﹐魏将邓艾曾说︰” 狄道﹑陇西﹑南安﹑祁山﹐各当有守。“ 邓艾都知道此地的重要性﹐诸葛亮不可能不知。诸葛亮若取得此处﹐除地理制高的优势外﹐更可以断绝曹魏与凉州的交通。待取得凉州骁勇羌兵及马匹增长势力后﹐再向关﹑洛进兵﹐兴复汉室。诸葛亮更有以下几个考量︰
第一﹑运粮问题在古时交通不便的情况下﹐往往决定了行军的路线﹐甚至战争的胜利。嘉陵江发源自散关﹐南流至重庆入长江﹔众多水脉均与其相接。如欲以嘉陵江水运军粮﹐则北可达上邽﹐西则为祁山﹐东可至故道斜谷。倘能善用此水道运粮﹐在以陆路运至渭河上游﹐再顺渭河而进( 关中地区即为渭河盆地 )﹐则到洛阳都毋须操烦粮运。
第二﹑祁山以西多产马匹﹐而战马是蜀最缺乏的。关中三辅及洛阳附近地区皆适合骑兵作战﹐曹魏本身多陆骑( 因幽﹑凉两州产马 )﹐要与之决战﹐战马不可或少。
第三﹑取得陇右既可断魏凉州之连系﹐获得陇右及凉州的马匹外﹐又可结好羌戎﹐助其复国大业。马超投奔刘备﹐刘备以其领凉州牧﹐也有这方面的用意。
第四﹑以行进路线而言﹐汉中直达关中诸道险阻难行﹐不似陇右大军易于出入。总之﹐武侯鉴于以上考量﹐并不急着与曹军决战﹐而为持久之计﹐遂将战场定于陇右﹐这也是后来武侯不赞同魏延子午谷之计的其中一个原因。