三國時為嘉川驛,昭歡縣、邵歡縣、石亭縣建置于此。
唐玄宗年間更名沙河驛。
1915年十二團區治地設于此。
1935年撤團區建沙河聯保。
1939年撤聯保建沙河鄉。
1943年將沙河鄉劃歸廣元縣第一區轄。
1950年建立沙河鄉人民政府,屬廣元縣第六區(羊木區)治,1953年歸廣元縣第七區(朝天區)治,1958年改沙河鄉為沙河人民公社,1984年改公社為鄉。
1992年與魚洞、蒲家鄉部分村合并置鎮。
1995年蒲家、魚洞析出恢復兩鄉建制。
2019年12月23日將蒲家鄉、魚洞鄉并入沙河鎮。