漢羌戰爭為東漢與西羌之間的舉國決戰，在西羌稱帝后規模更大更為慘烈，前後歷時百年。第一次從公元77年至101年，第二次公元107年至118年，第三次公元139年至145年，第四次公元159年至169年，第五次公元184年至214年。由於西羌的內遷，和河西走廊、隴西當地的漢人時常發生衝突。最初，西北的地方官多數都殘酷苛暴，導致西羌反抗此起彼伏，西羌人屠殺漢朝人，西羌人在東漢取代了北匈奴成為漢朝第一外患，西北地區尤其是關中多次淪為戰場，漢長陵等陵園直接暴露在羌人的進攻矛頭下，羌人還曾一度兵進至山西河東。不但如此，剛崛起的鮮卑、南匈奴亦不時起兵南下，戰亂波及關中、陜北、陜南等地。此戰之後，使得關中更加荒蕪，成了羌、氐、匈奴、拓跋等族的混雜區，東漢西北人口大量內遷，導致河套以南地區也成了「羌胡區」。關中地區的經濟、人口一直等到北周時期才逐漸復甦。唯一倖免戰亂的西北地區是涼州西部，尤其是敦煌、酒泉和張掖等郡在戰爭時相對穩定，此地是後來張氏前涼的根據地。
背景
羌在漢武帝時期被封閉在青海湖到西寧湟源縣湟中縣一線。「初開河西，列置四郡（河西四郡），通道玉門，隔絕羌胡，使南北不得交關。……羌乃去湟中，依西海、鹽池左右。」漢宣帝時代羌漢軍事對峙線在蘭州，「遂寇金城。」漢光武帝時代羌漢軍事對峙線在從西寧到蘭州一線來回拉鋸。本居住在黃河以北的大允谷（今青海省貴德）的燒當羌，其首領滇良聯合其他諸羌，擊敗了先零羌，奪得了大榆中地。燒當羌因此開始強大，在新莽末年、更始帝、隗囂時期，不斷侵入邊郡，甚至深入內地。滇良死後，兒子滇吾繼立。滇吾繼位后，該部落日趨強盛。
過程
燒當（羌稱帝前）
57年秋，滇吾率部入侵隴西郡，在允街擊敗隴西郡太守劉盱。原來在隴西郡為漢朝守衛邊疆的西羌人全部反漢。剛剛即位的漢明帝詔命謁者張鴻率兵討伐西羌人。張鴻在允吾縣被打敗，全軍覆沒。十一月，漢明帝又派中郎將竇固與捕虜將軍馬武率領四萬兵眾討伐西羌人。
58年七月，馬武等打敗燒當羌，其他造反的羌人部落悉數投降或者逃散。滇吾第二年投降，親自朝見漢明帝，護羌校尉戴成將滇吾譯成滇吾、滇岸兩名，說當初是滇吾與他弟弟滇岸，代承志率部入侵隴西郡，稱兩豪歸降。漢明帝得知實情后，將他免官。滇吾死後，其子東吾、迷吾繼立。
77年，安夷縣（今青海省樂都），有個官吏強搶西羌人婦女為妻，被那個婦女的丈夫所殺。安夷縣長宗延追捕兇手，直至塞外。該部落的羌人害怕受罰，就一起殺掉宗延，聯合勒姐、吾良兩個部落叛變。於是，迷吾便率各部一同造反，擊敗金城郡太守郝崇。漢章帝命武威郡太守傅育為護羌校尉。迷吾聯合封養部落共五萬餘人，進攻隴西郡、漢陽郡。八月，漢章帝派行車騎將軍馬防和長水校尉耿恭率領北軍的越騎、屯騎、步兵、長水、射聲等五校兵以及各郡的弓弩手，共三萬人，討伐西羌人。馬防等人的部隊在冀縣（今甘肅省天水）時，大敗西羌人，斬俘四千餘人，於是臨洮解圍。迷吾逃走。
86年，他和弟弟號吾侵擾隴西郡，號吾被生擒。隴西郡太守張紆將號吾放走，號吾將自己的屬軍解散，迷吾退居到黃河以北的歸義城。護羌校尉傅育想挑撥西羌人與小月氏互相爭鬥。西羌人與小月氏獲悉傅育的企圖，於是反叛出塞，依附迷吾。
87年三月，傅育派遣三千精銳騎兵追擊，在三兜谷中伏兵，傅育及其部下將士八百八十人陣亡。章帝命隴西郡太守張紆為護羌校尉，在木乘谷打敗西羌兵，迷吾表示投降，張紆接受。張紆在臨羌接待迷吾，宴會上，張紆下毒酒毒死迷吾，伏兵殺死羌酋八百餘人。迷吾子迷唐繼立，實力更加強盛。
88年，大臣推舉原張掖太守鄧訓取代張紆任護羌校尉。迷唐率騎兵一萬，先攻打臣服漢朝的小月氏。一些官員認為，羌與胡互相攻擊，對漢朝有利。鄧訓說，張紆失信，使羌人各部反叛，我們應該以恩德相待小月氏人，使其能為我所用。下令打開城門，接納小月氏人的妻子兒女。羌兵無獲，於是撤離。因此，湟中地區的小月氏都敬服鄧訓。鄧訓再招降西羌各部，迷唐的叔父號吾，率本部八百戶前羌人依附漢朝。鄧訓以四千軍隊出塞，在寫谷打敗迷唐，迷唐撤離出大、小榆谷，到頗巖谷。
89年春，迷唐打算回到大、小榆谷。鄧訓命長史任尚率領湟中的六千兵士，襲擊敗迷唐，斬殺一千八百餘人，俘虜二千人，繳獲馬牛羊三萬餘頭，使迷唐遭到重大打擊。迷唐收集餘部，西遷一千餘里，東吾的兒子東號前來歸降。
97年，迷唐率眾八千人犯隴西郡，加上其他西羌人部落，共三萬人步騎兵，打敗了隴西郡兵，殺死大夏縣長王超宇。
漢和帝派遣劉尚，小辮子代征西將軍，越騎校尉為副，率三萬漢、羌、小月氏兵行討伐。迷唐逃到臨洮之南。劉尚在高山大敗迷唐軍，斬俘一千餘人。迷唐後來也使漢軍死傷慘重，漢軍不能再追，於是回師。
99年，在謁者耿譚的計劃下，迷唐投降漢朝，到京城洛陽朝見。這時候迷唐的殘部已不足兩千，因飢餓窮困，全部遷入到金城。漢和帝命迷唐率部返回大、小榆谷。因漢朝修築了河橋，大、小榆谷已經不安全，迷唐以部眾飢餓為託詞，不肯遠行。護羌校尉吳祉賜給迷唐許多金帛，讓他購買穀物和牲畜，以求早日出塞。但西羌人認為朝廷又有陰謀。于100年，迷唐再度反叛，攻殺搶掠。
101年，迷唐率兵回到賜支河曲，接近漢朝邊塞。侯護羌校尉周鮪和金城太守霸，率兵三萬，打敗迷唐，燒當羌瓦解，六千餘人投降，迷唐越過賜支河源頭遠逃，投靠發羌。多年以後，迷唐病死，他的兒子來隆前來歸降，部眾已不足數十戶。
總地來說東漢初年羌漢軍事對峙線在今天京藏高速公路偏向西寧一帶拉鋸，期間羌漢雜居，時有衝突，臨羌縣是漢羌軍事對峙線最前沿。
先零（羌稱帝后）
107年，漢朝徵發西羌人屯戍西域，西羌人不滿，大舉逃亡。東號的兒子麻奴兄弟因此與本部一同西行出塞。而滇零與鐘羌各部落則深入河西走廊邊郡大肆搶掠，阻截了隴道。漢朝派車騎將軍鄧騭、征西校尉任尚率軍五萬伐西羌，結果失利。
108年，滇零在北地郡稱帝，招集武都郡參狼羌，和在上郡、西河郡的雜羌，切斷隴道，進攻掠奪三輔，並南下進入益州刺史部，殺死漢中郡太守董炳。次年（109年），當煎、鐘羌、勒姐諸羌進攻臨洮。
羌稱帝后，羌漢形勢發生巨變。羌人第一次攻入甘肅東南部。長安開始戒嚴，「置京兆虎牙都尉于長安，扶風讀為于雍。」也就是在這個時候，羌漢軍事對峙線發展到長安一帶，而一部分羌軍已經攻入山西上黨，而甘肅省西部已經不再屬於東漢。差不多在這個時候，甘肅戰場與寧夏打通，羌人和匈奴可以直接聯繫了。
110年，滇零遣兵寇褒中，漢中太守鄭勤移屯褒中，來抵抗西羌軍。
111年，先零羌攻打河內郡（河南武陟），洛陽震動。長安一帶被羌人破壞殆盡。隴西、陜北諸郡，都被遷移到內地。朝廷決定放棄隴西，被大臣勸阻。
112年，滇零病死，他的兒子零昌繼位。零昌年齡還小，同族的狼莫為他出主意，任命杜季貢為將軍，分兵駐紮到丁奚城。
113年，牢羌在安定郡與侯霸交戰。114年，西羌擄掠武都、漢中二郡，返回與零昌會合。先零、多號被侯霸、馬賢在枹罕（今甘肅臨夏）打敗。
115年，先零羌與中郎將尹就在益州刺史部交戰。
116年五月廿五，度遼將軍鄧遵率領南匈奴單于，在靈州進攻零昌，斬殺八百餘人。十二月十二，任尚派兵在北地進攻零昌，殺死零昌的妻子兒女，焚燒他們的住舍，將七百餘人斬首。
117年九月，護羌校尉任尚又收買效功羌人號封，刺殺了零昌。朝廷封號封為羌王。十二月廿五，任尚與騎都尉馬賢在富平縣大敗狼莫的羌軍，斬殺五千人，狼莫逃走。於是西河郡的西羌部落虔人部一萬人前往度遼將軍鄧遵處歸降，隴右郡縣平定。
118年，度遼將軍鄧遵收買上郡羌雕何刺殺了狼莫，朝廷將雕何封為羌侯。
其後任尚、鄧遵、馬賢時代，羌人稍弱，東漢開始收復甘肅東部
120年六月，護羌校尉馬賢率領一萬兵眾，在張掖討沈氐羌，斬殺一千八百人，俘虜一千餘人。燒當羌、聽說在馬賢大軍已經返回金城郡，與燒何部進攻張掖郡，殺害官吏。121年，燒當羌的忍良等人，不滿馬賢對麻奴兄弟的待遇，率部落侵犯湟中、金城郡。八月，馬賢率領先零羌回擊，牧馬場交戰，漢軍未能取勝。麻奴等又進攻武威。馬賢招撫引誘，迫使麻奴南返湟中。122年，馬賢追擊麻奴至湟中，大敗西羌軍，麻奴部下逃散。麻奴困窘，率部投降漢陽郡太守耿種。124年，麻奴去世，他的弟弟犀苦繼位。
漢羌決戰
漢順帝永和五年（140年），種羌等進攻金城郡，與西塞及湟中雜種羌胡又進攻三輔，殺害官吏。朝廷懲罰了并州刺史來機、涼州刺史劉秉，任命馬賢出任征西將軍，騎都尉耿叔出任副職，讓他們率領左右羽林、五校士及各州郡兵十萬人駐紮漢陽。永和六年（141年），馬賢部隊戰敗，馬賢及其二子均陣亡。
尾聲
漢桓帝時代，在張奐（字然明）、皇甫規（字威明）、段颎（字紀明）三將（號稱「涼州三明」）的鎮壓下，在殺死數萬西羌人之後，羌亂終於接近尾聲。段颎曾估計永初年間開始的羌亂耗費朝廷二百四十億，永和末年的羌亂耗費朝廷八十多億。後來漢靈帝、漢獻帝時期，馬騰、韓遂、宋建等人奪取了羌人軍隊的領導權，羌人反而被邊緣化。特別是馬騰母系是羌人，以馬騰、韓遂為代表的部隊在漢羌之間騎墻。董卓也是依靠對西羌人作戰崛起為漢軍重要將領，即便如此，董卓在對西羌的作戰中一度敗退到了長安附近扶風地區。
曹操掌權后，馬騰依附曹操，留子馬超統兵。後來曹操發兵關中，韓遂、宋建被平定，馬超出奔。