唐武德七年(624年)分西鄉縣東南地于今涇洋鎮南設洋源縣,屬洋州;大歷元年(766年)縣治被焚,移治今西鄉縣南20里。寶歷元年(825年)縣廢,地屬西鄉縣。清嘉慶七年(1802年)析西鄉縣東南地于今涇洋鎮置定遠廳,因原為東漢定遠侯班超封邑地,故名。
1913年罷廳設定遠縣,次年因地處大巴山,縣城為巴山重鎮,改名鎮巴縣。1914年屬漢中道。1928年直屬省。1949年屬陜南行署區。1951年屬南鄭專區。1953年屬漢中專區。1969年屬漢中地區。1996年屬漢中市。
1997年,城關鎮更名為涇洋鎮;全縣面積3437平方千米,人口27.5萬人。轄10鎮18鄉:涇洋鎮、漁渡鎮、三元鎮、鹽場鎮、長嶺鎮、簡池鎮、觀音鎮、巴廟鎮、興隆鎮、碾子鎮、小洋鄉、高橋鄉、陳家灘鄉、楊家河鄉、赤南鄉、巴山鄉、白河鄉、田壩鄉、麻柳灘鄉、平安鄉、仁村鄉、梨壩鄉、紅魚鄉、三溪鄉、大池鄉、永樂鄉、青水鄉、涼橋鄉。縣政府駐涇洋鎮。
2000年第五次人口普查,鎮巴縣常住總人口251522人,其中:涇洋鎮24129人、漁度鎮13237人、鹽場鎮15230人、觀音鎮12065人、巴廟鎮18163人、興隆鎮11924人、長嶺鎮12904人、三元鎮8197人、簡池鎮6202人、碾子鎮10821人、小洋鄉6894人、高橋鄉4005人、陳家灘鄉5163人、楊家河鄉6152人、赤南鄉12814人、巴山鄉10262人、白河鄉4339人、田壩鄉7536人、麻柳灘鄉6009人、平安鄉9456人、仁村鄉6744人、黎壩鄉7531人、紅魚鄉2926人、三溪鄉5892人、大池鄉4971人、永樂鄉6906人、青水鄉6575人、涼橋鄉4475人。
2001年,撤銷高橋鄉并入涇洋鎮,撤銷白河鄉并入小洋鎮,撤銷紅魚鄉、涼橋鄉并入三元鎮。調整后,鎮巴縣轄11個鎮、13個鄉:涇洋鎮、漁度鎮、鹽場鎮、觀音鎮、巴廟鎮、興隆鎮、長嶺鎮、三元鎮、簡池鎮、碾子鎮、小洋鎮、青水鄉、永樂鄉、陳家灘鄉、楊家河鄉、赤南鄉、巴山鄉、大池鄉、田壩鄉、麻柳灘鄉、平安鄉、仁村鄉、黎壩鄉、三溪鄉。
2010年第六次人口普查,鎮巴縣常住總人口246817人,其中:涇洋鎮38802人,漁渡鎮12433人,鹽場鎮15466人,觀音鎮10785人,巴廟鎮15111人,興隆鎮11840人,長嶺鎮13202人,三元鎮14256人,簡池鎮6454人,碾子鎮10207人,小洋鎮9231人,青水鄉7183人,永樂鄉5756人,陳家灘鄉4449人,楊家河鄉4513人,赤南鄉11276人,巴山鄉10561人,大池鄉5047人,田壩鄉7227人,麻柳灘鄉5099人,平安鄉8796人,仁村鄉5898人,黎壩鄉7744人,三溪鄉5481人。
2011年,撤銷陳家灘鄉并入涇洋鎮,撤銷麻柳灘鄉并入興隆鎮,撤銷田壩鄉并入觀音鎮;撤銷青水鄉、赤南鄉、平安鄉、楊家河鄉、巴山鄉、黎壩鄉、仁村鄉、大池鄉、三溪鄉、永樂鄉鄉的建制,相應設立鎮的建制。調整后,鎮巴縣轄21個鎮:涇洋鎮、漁度鎮、鹽場鎮、觀音鎮、巴廟鎮、興隆鎮、長嶺鎮、三元鎮、簡池鎮、碾子鎮、小洋鎮、青水鎮、永樂鎮、三溪鎮、楊家河鎮、赤南鎮、巴山鎮、大池鎮、平安鎮、仁村鎮、黎壩鎮。
2012年末,鎮巴縣面積3406.7平方千米,戶籍人口290847人,常住人口24.73萬人。2013年末,鎮巴縣轄21個鎮,共有23個社區、202個行政村,縣政府駐涇洋鎮。
2015年,撤銷三溪鎮,并入簡池鎮;撤銷涇洋鎮,設立涇洋街道。撤并42個行政村,保留160個行政村。調整后,鎮巴縣轄1個街道、19個鎮。