刘备在荆州,北有曹操,东有孙权,无法发展势力,西取益州,就势在必行了。
当时,占据益州的是刘璋。公元211年,刘璋听说曹操要派钟繇进攻张鲁,害怕曹操得汉中而取蜀土。蜀郡人张松企图依靠外力推翻刘璋,于是乘机向刘璋献策,请刘备入蜀讨伐张鲁。刘璋采纳了张松的建议,派遣法正到荆州迎请刘备。对刘备来说,这正是天赐良机,便立即和庞统等率军出发,留下诸葛亮、关羽驻守荆州。
刘备由水道,沿长江、嘉陵江,到达涪县(今四川绵阳),刘璋也从成都赶到涪城迎接。会见时关系甚为融洽,欢宴百余日后,刘璋拨给刘备很多军需用品,就请他进攻张鲁,自己返回了成都。刘备本意是要伺机夺取益州,当然不会离蜀而到汉中,所以军到葭萌(今四川广元),就停止前进,广施恩德,笼络人心。第二年,曹操进攻孙权,权向刘备求救。刘备即以此为借口,扬言要返回荆州。恰逢这时刘璋发觉张松私通刘备夺取荆州的阴谋,马上收斩张松。刘备见事机败露,就回师攻下涪城、绵竹(今四川德阳),包围雒城(今四川广汉)。与此同时诸葛亮、张飞、赵云也率军溯长江而上,攻下白帝、江州(今重庆市)、江阳(今四川泸州),抵达成都。刘备攻破雒城与诸葛亮共围成都,数十天后,刘璋出城投降。于是,刘备自领益州牧,安抚百姓,封赏群臣。他尤其注意吸收刘璋旧部和益州人士参加蜀汉政权,如董和、黄权、李严、刘巴等都委以重任,这样刘备在益州就站稳了脚跟。就在刘备集中精力治蜀之时,发生了两件大事:一是孙权索取荆州;二是曹操攻取汉中。
公元215年,也就是刘备得益州的第二年,孙权向刘备索取荆州。刘备答复说:要取得凉州才能奉还。刘备的托词激怒了孙权。孙权就派遣吕蒙袭取了长沙、零陵、桂阳三郡。刘备立即引兵五万下公安(今湖北公安),想重新夺回三郡。但这时曹操已攻取了汉中,刘备担心曹操趁机进攻益州,只得与孙权和解,以湘水为界,中分荆州:江夏、长沙、桂阳三郡属孙权,南郡、零陵、武陵三郡归刘备。这样,脆弱的孙刘联盟总算勉强维持下来,但裂痕已无法弥补。对东吴来说,荆州位于上游,威胁其安全,势在必夺,“竟长江所极,据而有之”(《三国志·鲁肃传》),乃是既定方针;对西蜀来说,荆州是北定中原的捷径,势在必守。此次刘备仓促出兵,凭借武力而未能保全荆州江南三郡,运用外交又未能弥补裂痕。这为后来关羽失荆州埋下了祸根。
汉中是巴蜀门户,刘备本该在取得益州之后,命一偏师,乘胜北进,一举而下。但他却舍此而与孙权争南三郡。争而不得,反被曹操占了汉中。刘备不得不亡羊补牢,引军返回江州。他命黄权领兵迎张鲁,可是张鲁已经投降曹操,曹操派夏侯渊、张郃驻扎汉中,时常侵犯巴郡边界。刘备令张飞进兵宕渠(今四川渠县),大破张郃,暂时解除了曹兵对益州的威胁。
公元218年,刘备采纳法正建议,进兵取汉中。公元219年,黄忠在定军山一战而斩夏侯渊,大败曹军。曹操闻讯,亲自从长安率军前来征战,刘备据险御敌,并不交锋。曹操攻不能克,伤亡很多,同年夏天,撤军北还。秋天,刘备进位汉中王。至此,刘备全部占有巴、蜀、汉中之地,加上荆州三郡,可说是“跨有荆益”。刘备一生理想实现了一半,而且是重要的一半。“高祖因之以成帝业”,刘备此时的情况还优于当年的汉王刘邦。刘邦只有一条路线,“明修栈道,暗度陈仓”;刘备却可两路出击,荆州北向,秦川东指。只待天下有变,兴复汉室,统一中原的大业便有可能实现。就在这大好形势下,时局突变,荆州失守,关羽阵亡。刘备开始从顶峰向下跌落,隆中路线,半道夭折了。
公元220年,曹丕代汉称帝,国号魏。次年,刘备亦在成都即皇帝位,国号汉,史称“蜀汉”。