繼位之初,秦惠文王重用張儀爲相,施行“連橫”策略,分化三晉諸國,經過與“合縱”陣營的幾番爭奪後,終於在惠文王七年(前318年),一舉粉碎五國合縱,重創魏、趙、韓三國聯軍,取得了對六國作戰的階段性勝利,奠定了秦國在七雄中的優勢地位。
惠文王九年(前316年),巴蜀之間爆發激戰,兩國均派使者到秦國告急求助。面對這一千載難逢的機遇,惠文王欲趁機出兵滅蜀,卻又因受到韓國的挑釁而舉棋不定;倘若出兵伐韓,又怕楚國趁蜀亂入蜀。秦國大將司馬錯力主先伐蜀國,卻遭到相國張儀的反對,張儀認爲應首先聯合楚、魏兩國,攻打韓國,隨後出兵三川,攻打新城、宜陽,兵臨兩週之郊,得九鼎,按圖籍,挾天子以令諸侯,天下臣服,這纔是霸王之業。而蜀國地處偏遠,其民久在化外,即使勞民傷財發兵前往攻打,也不足以此建立功勳。司馬錯則認爲:要想使國家富強,務必先擴張領土;要想兵強馬壯,必須先使人民富足;要想得到天下,一定要先廣施仁政。這三件事都做到以後,那麼天下自然可以獲得。秦國雖然強大,但與天下相比仍然弱小,故初期的兼併戰爭仍應從容易的地方着手,“勝於易勝”纔是上策。蜀國是一個地處偏僻的戎狄之邦,國家政治混亂,如果用秦國的兵力去攻打蜀國,就好像派狼羣去驅逐羊羣一樣容易成功。如此一來,秦國既可以擴大版圖,獲得財富和百姓,又不會招致天下諸侯的非議與抗爭,在外部條件相對平和的前提下,使得自身實力得到進一步的提升,爲日後更爲慘烈的兼併戰爭打下基礎。相反,如果秦國發兵攻打韓國,進而要挾周天子,一定會激怒天下人,剛剛擊破的合縱陣線又將再次形成,這一切均是無法掌控的,此舉確實相當危險。故而,時下伐蜀纔是萬全之策。
秦惠王聽從司馬錯的分析,遂令司馬錯與張儀等人起兵伐蜀,蜀王敗績,秦軍殺死蜀王,攻克蜀國。張儀又趁勝攻取了巴國,巴蜀之地盡歸秦國所有。隨後,秦國中央政府通過設郡、任守、移民、修城等一系列措施經營巴蜀之地,其間司馬錯又兩次親臨蜀地平叛,直至最終完全征服巴蜀之地。如司馬遷在《史記?張儀列傳》中所講:“蜀既屬秦,秦以益強,富厚,輕諸侯。”
秦惠文王在位之時,秉承秦國的“耕戰”國策,不斷東進,引起了山東六國的不滿,曾形成“合縱”陣營,秦國雖然憑藉其實力與策略,於惠文王七年擊敗聯軍,但其若想繼續東進勢必激起山東各國更爲猛烈地反抗,可以說秦國即使能夠僥倖再取得一些的勝利,也必將付出血的代價。另外,在此次合縱攻秦的行動中東方的老牌強國楚國只是名爲合縱長,並未真正出兵。戰國時期的楚國幅員遼闊,人口衆多,絕非三晉諸國所能比擬;楚軍裝備精良,訓練有素,軍事家孫武就曾發出“楚軍天下勁旅”的感嘆。最重要的是,楚國地處長江漢水中下游沿岸地區,國土被山帶河,地勢上佔有優勢,晉國名將先軫曾於城濮大破楚軍,最終也未能傷楚國分毫。而秦軍的東進勢必將觸及到楚國的固有利益,楚王必然出兵,這對於秦軍絕對稱得上是一個嚴峻的挑戰,如果與之硬拼,風險極大。如果秦國要打破楚國這一優勢,首先就是要佔領地勢險隘的巴蜀之地。如此秦軍便可以借江河之便,憑地勢之險,通過水路,浮江而下,不費牛馬人力,十日之內便可到達楚國的腹心區域,直接威脅楚都郢的安全。這也是與“憑高臨下,以逸待勞”的用兵原則相符的。試想如果楚國搶先一步控制巴蜀,便可東經韓國,西途蜀地,對秦國形成夾攻之勢,進可出兵攻秦,退可憑險守隘。秦國不要說是對外兼併天下,就是坐穩關中都並非易事。形勢在此,不進便退,故而“先行伐蜀,控制巴蜀之地,佔領長江漢水上游,藉以扼制楚國咽喉”的軍事決策,也是符合當時環境形勢的唯一選擇。歷史證實了司馬錯的判斷,秦國控制巴蜀也爲日後秦軍屢挫楚兵埋下了伏筆。
在錯綜複雜的形勢下,司馬錯以自己的深謀遠慮爲秦國選擇了最爲有利且影響深遠的軍事進攻目標,伐蜀一舉真可謂剛柔兼濟,意味深長,既緩解了同山東六國緊張的局勢,又爲秦國擴大了版圖,充實了國力,更是借巴蜀地利扼制楚國咽喉,體現了司馬將軍獨到的戰略眼光和開闊的作戰思路。司馬錯伐蜀是秦統一中國之前最爲重大的軍事舉措之一,從此秦國有了堅實的後方,列國兵馬再難踏入關中。如果說商鞅變法爲秦統一中國奠定了政治經濟基礎,那麼司馬錯伐蜀則是秦國在其“耕戰”國策的指導下所邁出的最爲堅實的一步,在秦國發展史上具有極爲重要的意義。