神爵元年(公元前61年)三月,义渠安国到达羌人地区,召集先零羌的三十多位首领,把其中特别狡猾凶狠的都杀了,又纵兵攻打先零羌人,斩杀一千多人。于是,那些归降的羌人以及归义羌侯杨玉等人心怀怨恨,无处信任汉朝,便劫持其他小部落,背叛汉朝,侵犯边塞,攻打城邑,杀死官吏。义渠安国率领骑都尉和三千骑兵屯驻防备羌人,到了浩亹(今甘肃永登西南大通河)时,被羌人攻击,损失了很多车辆、辎重和兵器。义渠安国带兵退回令居,将情况上报朝廷。当时,赵充国已经七十多岁,汉宣帝觉得他年纪大了,派丙吉去询问谁可以担任将领。赵充国回答说:“没有人比我更合适了。”汉宣帝派人去问他:“将军估计羌人实力如何?需要多少兵力?”赵充国说:“百闻不如一见,军事情况难以在远处估量。我希望能骑马赶到金城(今甘肃兰州),制定出具体的作战方略。羌人只是小小的夷族,逆天背叛,很快就会灭亡,希望陛下把这件事交给我,不要担忧。”汉宣帝笑着说:“好。”于是大规模调兵前往金城。夏四月,汉宣帝派赵充国率领军队攻打西羌。
六月,赵充国到达金城,等集结了一万骑兵后,准备渡过黄河,但又担心被羌人阻拦。于是,他在夜里派三名校尉率领士兵衔枚渡河,渡河后立即安营布阵。等到天亮,军队全部顺利渡过黄河。这时,有几十上百的羌人骑兵前来,在汉军附近出没。赵充国说:“我们的士兵和马匹刚到,还很疲惫,不能追击。这些都是羌人的精锐骑兵,很难对付,我还担心他们是诱兵。我们作战以消灭敌人为目的,不能贪图小利。”他命令军队不要出击,又派骑兵去侦察四望狭谷,发现那里没有羌人,便趁夜带兵前往落都,召集各校尉和司马,对他们说:“我知道羌人不会用兵了。如果他们派几千人守住四望狭谷,我们的军队怎么能进入呢?”赵充国经常把侦察放哨的工作放在重要位置,行军时必定做好战斗准备,驻扎时必定加固营垒,尤其能够保持稳重,爱护士兵,总是先制定好作战计划再出兵。军队向西行进,到达西部都尉府,每天都用丰盛的食物犒劳士兵,士兵们都愿意为他效力。羌人多次前来挑战,赵充国坚守不出。汉军抓到羌人的俘虏,俘虏说羌人首领们多次相互责备说:“叫你们不要造反,现在天子派赵将军来了,他都八九十岁了,还善于用兵,现在我们想和他打一仗然后战死,能做得到吗?”
起初,罕(xiǎn)、开(jiān)羌的首领靡当儿派弟弟雕库前来向西部都尉报告说:“先零羌想要造反。”几天后,先零羌果然反叛,而雕库的族人有不少在先零羌中,都尉就把雕库扣留下来当作人质。赵充国认为雕库没有罪,就把他放回去,并告诉罕、开羌的首领们:“大军前来是诛杀有罪之人,你们要明白分辨,不要自取灭亡。天子告诉羌人,犯法的人如果能互相抓捕斩杀,就可以免除罪行,还会根据功劳大小赏赐钱财,所抓捕的人的妻子儿女和财物也都归抓捕者所有。”赵充国计划凭借威望和信用招降罕、开羌以及被劫持参与反叛的人,瓦解羌人的阴谋,等到他们疲惫不堪时再进行攻击。当时,汉宣帝已经征发内地各郡的士兵以及屯驻在边境的军队,加起来有六万人。酒泉太守辛武贤上奏说:“郡里的军队都屯驻在南山防守,北部边境空虚,这种形势难以长久维持。如果等到秋冬季节再进兵,这是对付在境外的敌人的策略。如今羌人日夜侵扰,当地土地寒冷艰苦,汉军的马匹难以过冬,不如在七月上旬,携带三十天的口粮,兵分两路从张掖、酒泉出发,合力攻打在鲜水(今青海湖)附近的罕、开羌。即使不能将他们全部诛杀,也能夺取他们的牲畜,俘虏他们的妻儿,然后收兵返回,到冬天再发动攻击。这样多次出兵,羌人必定会被震慑打败。”汉宣帝把辛武贤的奏章交给赵充国,让他商议。赵充国认为,一匹马要驮着三十天的口粮,包括二斛四斗米、八斛麦,再加上衣服装备和兵器,很难追逐敌人。羌人一定会根据汉军的进退情况,逐渐撤退,进入山林,追逐水草。汉军如果深入追击,羌人就会占据前方的险要地势,守住后方的通道,断绝汉军的粮道,这样汉军必定会有伤亡危险,还会被夷狄嘲笑,而且这种情况千年都难以挽回。而辛武贤认为可以夺取羌人的牲畜、俘虏他们的妻儿,这恐怕只是空话,并非最好的计策。先零羌是反叛的主谋,其他部落只是被劫持参与,所以他的计策是暂且放下罕、开羌的小过错,不张扬追究,先诛杀先零羌,以此来震动其他部落,让他们悔过向善,再赦免他们的罪行,挑选了解他们风俗的良吏去安抚团结他们,这才是保全军队、保证胜利、安定边境的计策。汉宣帝把赵充国的奏章交给公卿大臣们商议,大臣们都认为先零羌兵力强盛,又有罕、开羌的帮助,如果不先打败罕、开羌,就无法对付先零羌。于是,汉宣帝任命侍中许延寿为强弩将军,同时任命酒泉太守辛武贤为破羌将军,赐给他们玺书,采纳了他们的计策,并下诏责备赵充国说:“如今运输粮草的事务纷纷兴起,百姓为此烦扰。将军率领一万多人的军队,不趁着秋季水草丰茂的时候,与羌人争夺牲畜,却要等到冬天,那时羌人都已储备好食物,躲进山中,凭借险阻防守,将军的士兵们在严寒中手脚都会冻裂,难道还会有利吗?将军不考虑国家的耗费,想要用几年的时间来战胜敌人,这样的事谁不愿意呢?如今诏令破羌将军辛武贤等人率领军队在七月攻打罕羌,将军要率军与他们一起进攻,不要再迟疑了。”