大清晚期政府风雨飘摇,住陕清军派往南方剿灭太平天国,陕西守军空虚。1862年(同治元年),陕西的华阴回民叛乱成立穆斯林民兵并迅速壮大,肆无忌惮的屠杀汉人。叛军首领任五为了表示自己“再无退路,再不回头”的决心,竟手刃了自己的家属!他们号召穆斯林起来“圣战”,杀光关中的“卡菲尔”(非穆斯林),建立一个独立的伊斯兰国家。穆斯林迅速组织了30万穆斯林民兵,在关中诸地的汉族地区展开了惨绝人寰的大屠杀。
沙苑(大荔县)地区“人类几灭”(据《同州府志》),临潼县被杀30万人(《临潼县志》)。在穆斯林叛军的涂炭下,三原、富平、华县、兴平等地汉人均遭到严重屠杀,死亡总数约有100万余人。
彼时陕西穆斯林叛军分为两条主要战线,东线上,约有民兵10万人,重点攻击同州(大荔)。中线民兵约16万,于1862年7月初攻克了六村堡,随后,穆斯林民兵挥师猛攻西安,陕西提督孔广顺等部约7000人拼死防守,穆斯林民兵本来想连同城内的穆斯林作内应,但是西安城内的阿訇是个远见卓识者,号召城内的穆斯林不要出城参与暴动,同时组成巡逻队,防止城内的汉人骚扰穆斯林,就这样,西安穆斯林始终没有参与这场“圣战”,得以保全。
1862年10月,清政府急调荆州将军多隆阿增援陕西。次年6月攻克了仓头镇,9月进至西安,此时西安已被包围了15个月,“粮米穷蹙”。随后连续收复了兴平,武功,1863年12月,多隆阿派总兵陶茂林部到达凤翔,被围困了460多天的西府大城得以解围,清兵猛攻凤翔,清军和穆斯林两军死伤极其惨重,护城河“水朱如血”,凤翔城终于被破,陕西穆斯林民兵被迫撤退,此时穆斯林民兵算上家属,约十五万人,进入甘肃东部。
甘肃张家川,穆斯林民兵在张家川屠杀汉族民众三万余人。1862年11月,穆斯林军队将领穆生华率部在秦安酸茨坡击败清军,斩秦州知府托克清阿;马化龙率部于1863年4月攻克靖远,杀10万人;1863年7月,马化龙诈降清军,骗开城门克宁夏府、灵州,人口损失140万。1864年秋(同治三年),河州(临夏)穆斯林经过1年多围攻,攻克临夏,死者50000余人。1865年河州穆斯林攻狄道州,杀10余万人。1864年底,肃州(酒泉)穆斯林“杀剿”汉人民众。他们攻下梨园堡等地,屠杀汉人后,在高台、临泽间被民众自发组织的反抗武装全部杀死。
陕甘同治之乱是受了云贵影响,太平军入陕为陕甘同治之乱提供了条件,太平军二次入陕在周至打死多隆阿(1864.1此后直到1867年底清军无合适统帅),1867年1月西捻军在西安附近大败清军,“捻回合势”等。西部的穆斯林叛乱已经漫布陕西、青海、甘肃、新疆等地,境外势力也开始插手,并在新疆建立了阿古柏汗国,意图分裂西北,清政府看到穆斯林叛乱难以控制,便派朝廷重臣左宗棠率军平叛。

太平天国被消灭后,左宗棠率领湘军开始对陕西山西一带用兵。左宗棠首先进攻捻军,在捻军被击破后再进攻位于陕西的穆斯林叛军,在陕西豪横了数年的穆斯林叛军在湘军面前土的掉渣,1866年(同治五年)叛军退守甘肃。
1868年,左宗棠率军进入甘肃,将20万敌人一举击溃,而后包围回族起义军的大本营金积堡,逼迫敌主帅马化龙投降。第二年,左宗棠继续挥师西进,先后光复西宁、肃州,同时招抚回族叛军将领马占鳌等人,允许他们在甘肃官府任职。
这些人后来逐渐发展成军阀,组建了臭名昭著的“马家军”,马占鳌的后代有马步青、马步芳、马鸿逵、马安国等,这股盘踞势力久居西北70多年,直到1949年人民解放军一野进军大西北,在彭德怀的铁钳猛攻下,才土崩瓦解。
1873年,随着最后一处敌堡河州被平定,陕甘回乱正式宣告结束。这场惊天灾难使得甘肃的人口由1900万下降至500万,陕西人口由1500万下降至700万,两地的劳动生产均遭受到巨大破坏,有些地区甚至十室九空。
西北回乱中,回民对汉人进行大规模屠杀,其后湘军在平定回变后对西北回族展开报复性屠杀。回乱前,陕西省有回民180万人,回乱平定后只有西安城内未参加回乱的3万回民得以幸存(就是今天西安西大街的回回),其余回民均被屠杀或逃亡。陕甘幸存的回族信众战后被清政府迁往宁夏甘肃苦寒之地。