縣因有大金川而得名。唐置羈縻金川州。清中葉改土歸流,設屯治理。1937年設靖化縣,1953年改名大金縣,1959年更名金川縣。
1996年,金川縣面積5574.4平方千米,人口約6.7萬人,其中嘉戎藏族人口約占62.5%。轄2個鎮、20個鄉:金川鎮、觀音橋鎮、沙耳鄉、慶寧鄉、咯爾鄉、勒烏鄉、萬林鄉、河東鄉、河西鄉、安寧鄉、卡撒鄉、曾達鄉、獨松鄉、馬爾邦鄉、馬奈鄉、集沐鄉、撒瓦腳鄉、卡拉腳鄉、二嘎里鄉、俄熱鄉、太陽河鄉、阿科里鄉。縣政府駐金川鎮,距州政府駐地馬爾康92千米。
2000年第五次人口普查,金川縣總人口69098人,其中:金川鎮12476人,觀音橋鎮2502人,沙耳鄉6212人,慶寧鄉2816人,略爾鄉5284人,勒烏鄉3419人,萬林鄉2023人,河東鄉1430人,河西鄉3564人,集沐鄉1811人,撒瓦腳鄉1230人,卡拉腳鄉1169人,俄熱鄉2975人,太陽河鄉692人,二嘎里鄉2445人,阿科里鄉3335人,安寧鄉3908人,卡撒鄉4291人,曾達鄉3308人,獨松鄉1754人,馬爾邦鄉1475人,馬奈鄉979人。
2004年,金川縣轄金川、觀音橋2個鎮和沙耳、慶寧、咯爾、勒烏、萬林、河東、河西、集沐、撒瓦腳、卡拉腳、俄熱、太陽河、馬奈、二嘎里、阿科里、卡撒、安寧、曾達、獨松、馬爾邦、毛日21個鄉。
2010年第六次人口普查,金川縣常住總人口65976人,其中:金川鎮15830人,觀音橋鎮2282人,沙耳鄉5631人,慶寧鄉1940人,咯爾鄉4711人,勒烏鄉2698人,萬林鄉1619人,河東鄉1046人,河西鄉2779人,集沐鄉1659人,撒瓦腳鄉925人,卡拉足鄉985人,俄熱鄉2908人,太陽河鄉643人,二嘎里鄉2599人,阿科里鄉1602人,安寧鄉3633人,卡撒鄉4082人,曾達鄉2571人,獨松鄉1442人,馬爾邦鄉1262人,馬奈鄉895人,毛日鄉2234人。
2013年,省政府(川府民政[2013]26號)批復同意撤銷安寧鄉,設立安寧鎮,鎮政府駐安寧村,轄原安寧鄉所屬行政區域。調整后,全縣轄3個鎮、20個鄉:金川鎮、觀音橋鎮、安寧鎮、沙耳鄉、慶寧鄉、咯爾鄉、勒烏鄉、萬林鄉、河東鄉、河西鄉、集沐鄉、撒瓦腳鄉、卡拉腳鄉、俄熱鄉、太陽河鄉、二嘎里鄉、阿科里鄉、卡撒鄉、曾達鄉、獨松鄉、馬爾邦鄉、馬奈鄉、毛日鄉。