安20年(215年)十一月,曹操平定张鲁。汉中乃四川之门户,曹操占据汉中,给蜀地的刘备造成极大威胁,刘备对汉中用兵,势在必行。建安22年(217年),曹操再次东击孙权,刘备集团看到了夺取汉中的大好机会,在法正的建议下,刘备决定攻打汉中。
汉中之战,是刘备和曹操面对面的最后一次对决。217年冬,法正建言刘备:“曹操一举收服张鲁,占有汉中,没有借此势头进图巴、蜀,只是留下夏侯渊、张郃屯守,自己率军北还,这并不是他战略目光短浅,也不是他力量有所不及,必然是他的内部出现了问题。