建安二十四年(219),刘备率军进攻汉中,次年黄忠在定军山斩夏侯渊,于是曹操亲自率领大军来争夺汉中,并先运大量的军粮到北山下,有数千万袋,黄忠认为可趁机夺取这些军粮,便领军出击,当时赵云属下的士兵也随着黄忠一起出击。 但是黄忠的军队过了约定的时间之后仍未回来,担心的赵云便带着数十骑出了营寨,查看黄忠等人的情况。 结果,正好碰上曹操派出的大军,赵云遭到曹军先锋部队的攻击,刚与敌人交手,曹操的大军已来到面前,声势逼人。赵云便一次又一次地突击曹军阵列,且战且退。曹军散而复合,赵云突围而出并退入蜀军的营寨内,此时部将张著受伤,又被曹军包围,赵云又一次驰马突击曹军,并救出张著,将他带回营寨内。此时曹军已追至蜀军的营寨前,沔阳长张翼正在防守营寨,见曹操大军杀到,便要闭门拒守。 赵云进入大营之后,却下令大开营门,然后令蜀军偃旗息鼓。 曹军见此情况,怀疑赵云设有伏兵,便向后退去。此时赵云下令鸣击战鼓,鼓声震天,又令军士以弩箭射曹军,曹军惊骇,自相蹂践,坠入汉水中淹死者甚多。次日刘备亲自来到赵云兵营察看昨日战斗之处,赞叹说:“子龙一身是胆也!”于是设宴欢庆直到黄昏,军中称呼赵云为“虎威将军”。
章武元年(221),刘备称帝,欲进攻东吴,以报孙权伐取荆州、杀害关羽之仇,赵云上谏说:“国贼是曹操,并不是孙权,灭了魏国之后,吴国自然会臣服。虽然曹操毙命,但其子曹丕篡盗皇位,引起公愤,应该利用此民愤,先攻占关中,占据黄河、渭水上游以讨伐逆贼,那么关东义士必裹粮策马以迎王师。不该放置魏国,反而先打吴国。而且与吴国的战争一旦开始,就不易停止了,伐吴并非上策。”但愤怒的刘备不听谏言,执意东征,留赵云都督江州。