宣帝神爵元年(公元前61年),漢宣帝決定出兵征伐羌族,派遣禦史大夫丙吉詢問趙充國,誰可作統帥。趙充國當時已76歲,自薦說:“沒有比老臣我更合適的了。”宣帝又遣人問他:“將軍估計羌人的情況如何?需要多少兵馬對付?”趙充國說:“百聞不如一見。打仗的事很難遙測。我到金城(今甘肅蘭州西北)察看情況後,再將詳細的作戰地圖和用兵計劃呈報皇帝。”
趙充國受命後率萬餘騎兵趕到金城,準備渡過黃河進入羌族武裝活動十分活躍的西部都尉府(治所在今青海樂都南)轄區。他用兵一向非常慎重,行軍宿營“常以遠斥侯(偵察人員)為務,行必為戰備,止必為營壘”,“先計而後戰”。這次渡黃河,為了防備羌兵在漢軍半渡時截擊,他派出3支小部隊半夜潛渡並連夜在黃河對岸趕修工事。天明時,漢軍大部隊渡過黃河。這時,羌百餘騎兵前來挑釁。趙充國力戒漢軍不得輕舉妄動。他認為,漢軍長途跋涉已很疲憊,而羌兵以逸待勞銳氣正盛。如果遇到羌兵遊騎就予追殺,那麼漢軍就不但得不到休整,還會誤中敵人誘兵之計。“擊虜以殄滅(全殲)為期,小利不足貪”。他派出偵察小隊查看進軍落都(今青海樂都南)必經的四望峽(今樂都西南)。此處地形險要,羌人隻要用一支部隊把守,漢軍就很難通過。但羌人未在此設防。趙充國遂於晚上引軍過四望峽到達落都。趙充國對部下說:“我知道羌人不會用兵了。如果他們在四望峽部署數千人防守,我們哪能進來呢!”隨後,他率軍進駐西部都尉府駐地龍支(在今樂都南)。
趙充國到達西部都尉府後,經過調查研究製定了以分化瓦解為主,以用兵為輔,爭取罕、稈羌,孤立先零羌,集中兵力待機出擊,以獲取全勝的作戰方針。
漢宣帝將辛武賢的建議轉給趙充國,讓其組織部屬研究此建議的可行性。趙充國與長史董通年等研究後認為,辛武賢建議以萬餘騎兵迂回千裏攻擊罕、稈,是不實際的。馬匹負載30天糧食,再加上衣裝武器,就難以追逐了。漢軍辛辛苦苦趕去,羌兵會撤退藏匿;繼續追擊,他們會據險扼守,截斷漢軍糧道。那樣,漢軍“必有傷危之憂,為夷狄笑”。因此,趙充國仍堅持團結罕、稈,討伐先零的主張,認為“先行先零之誅”可以使罕、稈等部落“悔過反善”,這才是“全師保勝安邊之策”。
宣帝和朝廷大臣均反對趙充國的意見。他們認為,先零兵強盛,又得到罕、稈的幫助,不先破罕、稈就無法對付先零。宣帝下詔責備趙充國,同時任命樂成侯許延壽為強弩將軍、辛武賢為破羌將軍,令他們率軍攻罕、稈,速戰速決。趙充國收到宣帝責備詔書後認為,將領統兵在外,應從安定國家的目標出發,根據實際情況堅持自己正確的意見,於是上書勸告宣帝收回成命,指出:置先零,先擊罕,釋有罪,誅無辜,引出一個仇敵,造成兩處禍害,會鞏固羌族聯盟。這是得不償失的軍事行動。在趙充國的勸說下,宣帝勉強接受了趙的意見。