，双方在汉中僵持一年多，建安二十四年（219年）春刘备听从法正计策，从阳平南渡沔水，依定军山恃险安营。夏侯渊带少数兵力争夺定军山营地，法正对刘备说：「可击矣」；刘备便命黄忠乘高鼓噪攻之，居高临下，冲入敌阵，杀死夏侯渊。一举斩杀了夏侯渊及曹操所置的益州刺史赵颙等。建安二十四年三月(219年58岁)，曹操自长安率兵经褒斜谷赶往汉中，刘备说：「曹公虽来，无能为也，我必有汉川矣。」刘备在险处死守，不与曹军交战。诸葛亮亲坐益州，将人力、物力及时补充到刘备军中。夏五月，曹操引兵撤出汉中，汉中归刘备所有。另一