建安十六年(公元211年)劉備先到江州,再由墊江水到達涪縣。當時劉備的軍隊距離成都只有三百六十里,劉璋則率領步騎三萬多人前往涪縣與劉備會和。
張松暗中派法正去告訴劉備説:“可以借這次會面的機會抓住劉璋,這樣便可以不費一兵一卒便可平定益州。”旁邊的軍師中郎將龐統也很認可這個方案。而作為領導的劉備卻一票否決了這個方案,他説:“我們這才剛到蜀地,還沒樹立恩信就奪人疆土,也太過倉促了吧!到時會惹眾怒的。”就這樣,劉備、劉璋兩個集團經過商議,在北擊張魯,共抗曹操方面達成共識。
雙方歡聚暢飲百餘日後,劉璋又供給劉備許多軍需,派他去討伐漢中的張魯。據《吳書》記載:“璋以米二十萬斛,騎千匹,車千乘,繒絮錦帛,以資送劉備。”後又讓劉備統帥白水關的駐軍,兵力合併各路軍隊共有三萬人,車輛鎧甲兵器資助都很充分。
按照約定後,劉璋回到成都聽候劉備的佳音,劉備則北上討伐張魯,但是劉備的大軍到達葭萌後便停滯不前了。他沒有立刻去討伐張魯,而是在當地廣施恩德,爭取民心。在當地呆了一年之久也沒有任何攻打張魯的行動。龐統覺得這不是長久之計,認為時間拖得越久,越容易引起劉璋等人的懷疑,於是對劉備説:“主公,這樣下去不是辦法啊!我這裏有上、中、下三條計策,任你挑選。如果再繼續猶豫不前,大家遲早都會陷入危險之中,真的不能拖延下去了。”
上策:暗中挑選精兵,晝夜兼程去偷襲成都,劉璋這家話是個慫逼,又沒有對我們有所防備,成都可以一舉而定。
中策:楊懷、高沛是劉璋手下的名將,他們依靠手中所擁有精鋭部隊據守關頭,我聽説他們曾幾次寫信勸劉璋,把你幹回荊州。我們可以在在到達白水關之前,先派人通知他們,就説荊州形勢有變,要回去救援,並做出回撤的樣子。楊懷、高沛二人既敬服你的威名又高興您能回去,一定會輕裝前來拜訪您,我們可以趁這機會將他們抓起來殺死,然後收編他的軍隊再進擊成都。
下策:我軍退還白帝城,返回到荊州,日後再想辦法攻取益州。”劉備反覆思考,認為真打張魯是不可能的,退兵更是不可能的,於是就選擇了龐統的中策。
在這裏龐統的上策是出其不意,攻其不備,時間最短但是風險也是最大。劉備想要派遣一小股部隊從葭萌到達成都,中途需要經過涪縣、綿竹、洛城幾個重要據點,要想不被對方發現實屬困難。萬一被發現,劉備集團就要面臨前有固城後有追兵的困境。中策比較穩妥,既能穩定自己的大後方又能增強自己的兵力,可謂一舉兩得。不過劉備將會花費大量的時間和付出比較大的代價,因為這樣做就等於向劉璋集團公開宣戰,也就這讓劉璋有了應對的時間。而下策根本不在劉備他們的選擇範圍之內,撤回白帝城就等於劉備集團這兩年的努力白費掉,佔據益州將會遙遙無期。
建安十七年(公元212年)曹操再次攻打孫權,孫權急忙向劉備請求救援,於是劉備便趁機實行龐統的中策。據《三國志 先主傳》記載,劉備派遣使者告訴劉璋説:“曹阿瞞現在正攻打孫權,東吳形勢現在很是危險。孫氏於我的關係是唇齒相依,加上魏將樂進於青泥與我弟關羽相持不下,如果我不去救援,樂進一定會打贏的。萬一他們轉而進犯益州,那麼益州面臨的敵人將會比張魯厲害多倍,那個張魯不過是個不成氣候的山賊,不值得我們如此擔憂。”順便又向劉璋要求增拔一萬多士卒,以及一批軍需物資。
劉璋就算智商再低,現在也知道劉備在耍他,心想這傢伙不會是來我益州騙吃騙喝的吧。因此,只給劉備增撥四千名士兵,其他物資也全部只給一半。然而,這一切都正中劉備的下懷。據《魏書》記載,劉備藉此激怒部下説:“我們從荊州遠到這裏,替益州征討強敵,大軍辛苦勞累,不能過安生日子。可如今劉璋府庫積累着大量財富卻捨不得獎勵有功的將士,還奢望士大夫替他苦戰,真是太過分了。”
然而,劉備千算萬算,還是把成都裏的張松給算漏了。張松不知道劉備的計策,以為劉備軍是真撤退,於是連忙寫信勸他留下,結果被他的哥哥張肅知道。這個親哥哥害怕弟弟會連累自己,竟向劉璋告發了此事。
劉璋這時候才恍然大悟:原來劉備入蜀從一開始就是一場陰謀。他生氣之下,一方面將內奸張松殺掉,一方面下令成守白水關的諸將不要給劉備送文書,也不要與劉備有任何聯絡通信。劉備知道後非常生氣,他“召璋白水軍督楊懷,責以無禮,斬之”。兩人自此徹底撕破臉皮。
劉備派出黃忠、卓膺統兵攻佔來涪縣。攻下涪縣後的劉備志得意滿,開始大宴羣臣,似乎沒有了一開始時那種信義的束縛了,他對龐統説:“今天這場宴會真是快樂致極。”龐統卻在旁邊冷不丁地潑了一盆冷水説道:“把討伐別國的行為當作快樂,不是仁者之兵。”場面頓時陷入一片尷尬,所有官員都被旁聽的一句話搞懵逼了。劉備對此非常生氣,他説:“周武王討伐商紂王,前歌後舞,難道也不是仁義之師嗎?你這話説的不對,趕快給我滾出去。”龐統沒作任何辯解,直接就起身退了出去。過一會兒,劉備就後悔了,於是又厚着臉皮硬把龐統請了回來。龐統回到原來的位置上坐下,既不看劉備,也不道歉,只顧着自己吃喝。場面又一度十分尷尬。
劉備為了“活躍氣氛”對龐統説道:“剛才我們的爭論,到底是誰的過失?”龐統説:“你我君臣都有過失。”劉備聽後哈哈大笑,酒宴終於恢復到原來歡樂的氣氛。
劉備的錯是之前拿着仁義的標準來衡量自己的行為,導致做什麼事都放不開手腳。而龐統的錯就是拿劉備之前的標準來衡量此時正在討伐益州的劉備。那話雖然是出自龐統之口,但觀點卻來自劉備。龐統説自己也有錯,其實是否定劉備之前那套以信義為做事標準的價值觀。因此歸根解底還是劉備的錯。劉備也明白龐統的良苦用心,虛心接受批評。日後劉備做事終於可以放開手腳,不必再顧及自己的行為是否符合自己的那套標準。
建安十八年(公元213年),劉璋派出將劉璝、冷苞、張任、鄧賢、吳懿等前去抵禦劉備,結果都被劉備打敗。他們不得不退守綿竹,其中吳懿率軍投降了劉備。劉璋又派護軍南陽的李嚴和江夏的費觀去統兵駐守綿竹的各路兵馬,結果他們倆直接率部投敵,這使得劉備的勢力一下子變得十分強大。
劉備派軍隊佔領周圍的郡縣,還把劉璋的兒子劉循圍困在雒城,就當劉備以為會一路順風地打下去之時,上天卻立刻給了他當頭一棒。在圍攻雒城戰中,龐統被流失射中而死,時年36歲。劉備對龐統的死感到非常悲痛和惋惜,每次提起龐統的名字就忍不住流淚。
當時南陽的張存向來不服龐統,他説:“龐統雖然盡忠可惜,但是他違背大雅之義。”旁邊的劉備一聽,勃然大怒地説道:“龐軍師已經殺身成仁,你還一邊説他風涼話。”於是,立刻便罷免了張存的官職。
平定益州後,劉備又為了表彰龐統的功勳,追賜龐統為關內侯。還任命龐統的父親為議郎,後升任諫議大夫,就連諸葛丞相見了都要行跪之禮。