举进攻汉中阳平关，汉中之战爆发。218年七月，曹操亲率大军坐镇长安，同时边塞硝烟再起，曹彰、田豫北征，大破乌桓、鲜卑联军。镇守汉中的夏侯渊与刘备相峙一年，曹军守将夏侯渊、张郃、徐晃多次击退刘备军勐烈攻势。219年正月，刘备亲自领军和黄忠分进合击，于定军山斩杀征西将军夏侯渊。至此汉中为刘备取得，同年三月曹操亲自挥军欲夺回，一度召集抽调镇守北方的曹彰二十万大军增援，但是都为刘备所败，曹军无功而返，刘备便派刘封、黄忠、赵云等将昼夜不停攻击曹军。至五月曹操便撤退至长安，且身体已感觉不适。刘备攻下房陵，派刘封顺沔