在蜀汉建兴六年的秋九月,曹魏的都督曹休被东吴的陆逊在石亭大败,车辆、马匹、军资器械全部丧失殆尽。曹休极度惶恐,忧郁成病,回到洛阳后,因背部长疮而死。魏主曹睿下令厚葬他。
司马懿引兵回撤,众将接入后问道:“曹都督兵败,是元帅的责任,为何这么急着撤回呢?”司马懿回答说:“我预料诸葛亮知道我军兵败,必定会乘虚来攻取长安。如果陇西出现紧急情况,谁来救援呢?所以我选择回撤。”众将都以为他是出于惧怕,嘲笑他后离去。
东吴派遣使者送信到蜀中,请求蜀国出兵伐魏,并告知大破曹休的战绩。这样既显示了东吴的威风,又表达了和蜀国之间的友好关系。后主刘禅非常高兴,派人持书信到汉中,通知诸葛亮。当时诸葛亮兵强马壮,粮草充足,所用之物一切完备,正要出兵。听到这个消息后,他设宴大会诸将,商议出师事宜。
忽然一阵大风从东北角刮起,把庭前的松树吹折了。众人都大吃一惊。诸葛亮随即进行了一次占卜,说道:“这风预示着我们将要损失一位大将!”诸将都不相信。正在饮酒时,忽然有人来报,镇南将军赵云的长子赵统、次子赵广来见丞相。诸葛亮大惊,把酒杯扔在地上说:“子龙(赵云的别名)去世了!”赵统、赵广进来拜见,哭着说:“我们的父亲昨夜三更时病重去世了。”诸葛亮跺着脚哭着说:“子龙去世,国家失去了一栋梁之才,我也失去了一员得力干将啊!”众将都无不落泪。
诸葛亮命令赵统、赵广前往成都向后主报丧。后主听说赵云去世,放声大哭说:“我当年年幼无知,如果不是子龙将军在乱军之中保护我,我早就死了!”他立即下诏追赠赵云为大将军,谥封为顺平侯,并命令在成都锦屏山之东为他举行葬礼并建立庙堂,四季祭祀。后人有诗赞颂赵云道:“常山有虎将智勇匹关张。汉水功勋在当阳姓字彰。两番扶幼主一念答先皇。青史书忠烈应流百世芳。”
后主感念赵云昔日的功劳祭祀葬礼举办得非常隆重。他封赵统为虎贲中郎将赵广为牙门将让他们去守护赵云的坟墓。两人辞谢而去。
忽然近臣奏报说:“诸葛丞相已经将兵马分配妥当近日将要出兵伐魏。”
后主询问在朝的各位大臣,大臣们多认为不可轻举妄动,后主疑虑未决。这时忽然有奏报说丞相诸葛亮派遣杨仪带着出师表来到,后主宣杨仪入朝,杨仪呈上表章。后主在御案上拆开观看,表中写道:“先帝考虑到汉贼不能两立,王业不能偏安一隅,所以托付臣下以讨贼重任。以先帝的明智,量度臣下的才能,固然知道臣下伐贼,才力微弱而敌人强大。但是不伐贼,王业也会灭亡。只是坐待灭亡,哪里比得上伐贼呢?因此托付臣下重任而毫不疑虑。臣下接受任命以来,睡不安稳,食无滋味,考虑北征之事,应该先安定南方。所以五月渡过泸水,深入不毛之地,两天才吃一天的饭。臣下并非不爱惜自己,只是考虑到王业不可偏安于蜀都,所以冒着危难来奉行先帝的遗愿,可是议论者却认为这不是良策。如今贼人正好在西边疲于奔命,又极力在东部作战,兵法说应乘敌人疲劳之时发起进攻,这正是进兵的时机。谨慎地陈述此事如下:汉高祖的明智如同日月高悬,谋臣的谋略深邃远大,然而还是涉历艰险,身受创伤,遭遇危难然后才得安定;如今陛下未能比得上高祖,谋臣也不如张良、陈平,却想采用长期相持的策略来取胜,安安稳稳地平定天下,这是臣下所不能理解的第一点。刘繇、王朗各自占据州郡,谈论安危大计,动辄引用圣人之言,然而他们疑虑满腹,胸中充塞着各种难题;今年不打仗,明年不出征,让孙权安然强大起来,终于并吞了江东,这是臣下所不能理解的第二点。曹操的智谋策略,远远超过别人,他用兵如同孙武、吴起,然而在南阳受困,在乌巢遇险,在祁连遭逼,在黎阳被迫,几乎败于北山,差点死在潼关,然后才得僭称一时之尊;何况臣下才能微弱,而竟想不冒艰险来平定天下,这是臣下所不能理解的第三点。曹操五次攻打昌霸而攻不下,四次想跨越巢湖而未成功,任用李服而李服密谋对付他,委用夏侯而夏侯败亡,先帝常常称赞曹操有才能,还有这些挫折,何况臣下才能低劣,怎能必胜敌人呢?这是臣下所不能理解的第四点。自从臣下到汉中以来,不过一年时间而已,然而丧失了赵云、阳群、马玉、阎芝、丁立、白寿、刘合、邓铜等人,以及部曲中的将领、屯兵将官七十多人,突将、无前、賨叟、青羌、散骑、武骑等士卒一千多人,这些都是几十年内从各处纠集起来的精锐力量,不是一州一郡所能拥有的;如果再过几年,就会损失原有兵力的三分之二,那时拿什么去对付敌人呢?这是臣下所不能理解的第五点。如今百姓贫穷兵士疲乏,但战争不可能停息,战争不能停息,那么驻守和出征的耗费正相等;如果不趁此时早定大计,却想以一个州的地盘与敌人长久相持,这是臣下所不能理解的第六点。最难于判断的,是战事。当初先帝兵败于楚地,这时候曹操拍手称快,以为天下已经平定了。但是后来先帝东面与孙吴联合,西面攻取了巴蜀,出兵北伐,夏侯授首,这是曹操失策之处,而复兴汉室的大业将要成功了。然而后来孙吴又违背盟约,关羽战败被杀,先帝又在秭归失误,曹丕称帝,所有的事情都象这样,很难预料。臣下只有竭尽全力,到死方休罢了。至于伐魏兴汉究竟是成功是失败,是顺利还是困难,那是臣下的智力所不能预见的。”
后主看完表章后非常高兴,立即下令让诸葛亮出兵。诸葛亮接受命令,调集了三十万精兵,任命魏延为总督前部先锋,直奔陈仓道口而来。早有细作把这一消息报告到洛阳。司马懿上奏魏主,召集文武大臣商议对策。大将军曹真出班奏道:“我昨天守卫陇西,功劳微小而罪责重大,深感惶恐不安。现在请求率领大军去擒拿诸葛亮。我最近得到一员大将,他使用六十斤重的大刀,骑乘千里马,能开两石重的铁胎弓,暗藏三个流星锤,百发百中,有万夫不当之勇,他是陇西狄道人,姓王名双,字子全。我保举他作为先锋。”魏主非常高兴,立即召见王双上殿。只见他身高九尺,面黑眼黄,体格魁梧。魏主笑着说:“我得到这样一员大将,还有什么可忧虑的呢!”于是赐给他锦袍金甲,封他为虎威将军、前部大先锋。曹真担任大都督。曹真谢恩后出朝,随即率领十五万精兵,会合郭淮、张合等人,分道把守各个隘口。
然而,蜀军的前哨部队到达陈仓后回报诸葛亮说:“陈仓口已经筑起一座城池,由大将郝昭把守,深沟高垒,遍布防御工事,防守十分严密。我们不如放弃这座城池,从太白岭的鸟道出祁山更为便利。”诸葛亮说:“陈仓正北方是街亭,只有得到这座城,我们才能进一步出兵。”于是命令魏延率兵到城下四面围攻,但连续几天都未能攻破。
魏延再次向诸葛亮报告说城池难以攻打。诸葛亮大怒,想要斩杀魏延。突然,帐下一人站出来说:“我虽然没有大才,但跟随丞相多年,一直没有机会报效国家。我愿意去陈仓城中,说服郝昭投降,不用一兵一卒。”众人看去,原来是部曲靳祥。诸葛亮问:“你打算用什么话来说服他?”靳祥回答说:“郝昭和我是陇西同乡,自幼交好。我现在去见他,用利害关系来说服他,他一定会投降的。”诸葛亮便命令他前去。
靳祥骑马直奔城下,高呼:“郝伯道故人靳祥来见。”城上的人报告给郝昭。郝昭命令开门放入靳祥,两人在城上相见。郝昭问:“故人为什么到这里来?”靳祥说:“我现在在西蜀诸葛亮的帐下,参与军机大事,被待以上宾之礼。诸葛亮特地派我来见你,有话要告诉你。”郝昭听后脸色大变,说:“诸葛亮是我国的仇敌!我效忠魏国,你效忠蜀国,各为其主。过去我们是兄弟,但现在我们是仇敌!你不必再多说,请出城吧!”靳祥还想说话,但郝昭已经转身下了敌楼。魏军急忙催他上马,赶出城外。靳祥回头看郝昭,只见他靠在护心木栏杆上。靳祥勒住马,用鞭指着他说:“伯道贤弟,为何如此薄情?”郝昭说:“魏国的法度你是知道的。我受国家之恩,只有以死相报而已。你不必再劝降了。快回去告诉诸葛亮,让他快来攻城吧!我不怕他!”
靳祥回去告诉诸葛亮郝昭的态度。诸葛亮说:“你可以再去见他一次,用利害关系来说服他。”于是靳祥又到城下去见郝昭。然而郝昭在敌楼上再次拒绝了他的劝降,并威胁说如果靳祥再不走就用箭射他。靳祥无奈只好回去向诸葛亮复命。
诸葛亮听后大怒说:“这个匹夫太无礼了!难道他以为我没有攻城的器械吗?”随即叫来当地人询问陈仓城中的人马数量。当地人回答说:“虽然不清楚具体数目,但大约有三千人。”诸葛亮笑着说:“这么小的城池怎么能抵挡我们的大军呢?别等他们的救兵到了,我们火速攻城吧!”于是军中架起百乘云梯,每乘云梯上可立十几个人,周围用木板遮护以防敌人攻击。士兵们各拿短梯和软索准备攀城而上。随着军中擂响战鼓士兵们呐喊着向城池发起进攻。然而他们没有想到的是城上的魏军早已做好准备,他们等蜀军的云梯靠近城墙时一齐发射火箭将云梯点燃,云梯上的士兵大多被烧死。城上的魏军又如雨点般投掷石块和箭矢使得蜀军无法靠近城墙被迫撤退。
诸葛亮看到云梯被毁大怒说:“你们烧我的云梯我就用‘冲车’来攻城!”于是他连夜安排制造出冲车准备第二天再次进攻。然而郝昭却命人运来石块在城墙上凿出眼孔用葛绳将石块系住待冲车靠近时一齐掷下将冲车全部砸毁。诸葛亮又命令士兵运土填平城壕让廖化率领三千名挖土工从夜间开始挖掘地道想要暗中进入城内。然而郝昭却在城内也挖掘了深壕截断地道使蜀军无法攻入。双方就这样昼夜不停地攻防了二十多天蜀军仍然没有找到破城的方法。
诸葛亮正在营中忧闷时忽然有探子来报:“东边有魏国的救兵到了,打着‘魏先锋大将王双’的旗号。”诸葛亮问:“谁可以迎战他?”魏延站出来说:“我愿意去。”但诸葛亮说:“你是先锋大将不能轻易出战。”于是又问:“还有谁愿意去迎战?”裨将谢雄应声而出诸葛亮便给他三千兵马让他前去迎战。随后诸葛亮又问:“还有谁愿意去?”裨将龚起也应声而出诸葛亮同样给他三千兵马让他去迎战。为了防止城内郝昭趁机引兵冲出诸葛亮把人马退后二十里扎下营寨以防不测。