經過春秋時期長期的爭霸戰爭,許多小的諸侯國被大國吞並了。有的國家內部發生了變革,大權漸漸落在幾個大夫手裏。這些大夫原來也是奴隸主貴族,後來他們采用了封建的剝削方式,轉變為地主階級。有的為了擴大自己的勢力,還用減輕賦稅的辦法來籠絡人心。這樣,他們的勢力就越來越大了。
一向稱為中原霸主的晉國,到了那個時候,國君的權力也衰落了,實權由六家大夫把持。他們各有各的地盤和武裝,互相攻打。後來有兩家被打散了,還剩下智家、趙家、韓家、魏家。這四家中,又以智伯瑤的勢力最大。連國君晉哀公也成了他的傀儡。
智伯瑤野心勃勃,一心想廢國君而立,他的謀臣知過說:“不可。趙、魏、韓三家實力不弱,必然反對主公,不如先削弱這三家的實力,再圖君位。”智伯瑤接受了此建議,便對三家大夫趙襄子、魏桓子、韓康子說:“晉國本來是中原霸主,後來被吳、越奪去了霸主地位。為了使晉國強大起來,我主張每家都拿出一百裏土地和戶口來歸給公家。”
三家大夫都知道智伯瑤存心不良,想以公家的名義來壓他們交出土地。可是三家心不齊,韓康子首先把土地和一萬家戶口割讓給智家;魏桓子不願得罪智伯瑤,也把土地,戶口讓了。
智伯瑤又向趙襄子要土地,趙襄子可不答應,說:“土地是上代留下來的產業,說什麼也不送人。”智伯瑤氣得火冒三丈,馬上命令韓、魏兩家一起發兵攻打趙家。
公元前455年,智伯瑤自己率領中軍,韓家的軍隊擔任右路,魏家的軍隊擔任左路,三隊人馬直奔趙家。趙襄子自知寡不敵眾,就帶著趙家兵馬退守晉陽(今山西太原市)。
沒有多少日子,智伯瑤率領的三家人馬已經把晉陽城團團圍住。趙襄子吩咐將士們堅決守城,不許交戰。三家兵士攻城的時候,城頭上箭好像飛蝗似的落下來,使三家人馬沒法前進一步。晉陽城憑著弓箭死守了兩年多。三家兵馬始終沒有能把它攻下來。
有一天,智伯瑤到城外察看地形,看到晉陽城東北的那條晉水,忽然有了主意:晉水繞過晉陽城往下流去,把晉水引到西南邊來,晉陽城不就淹了嗎?他就吩咐兵士在晉水旁邊另外挖一條河,一直通到晉陽,又在上遊築起壩,攔住上遊的水。
這時候正趕上雨季,水壩上的水滿了。智伯瑤命令兵士在水壩上開了個豁口。這樣,大水就直衝晉陽,灌到城裏去了。城裏的房子被淹了,老百姓不得不跑到房頂上去避難,灶頭也被淹沒在水裏,人們不得不把鍋子掛起來做飯。可是,晉陽城的老百姓恨透了智伯瑤,寧可淹死,也不肯投降。
智伯瑤約韓康子、魏桓子一起去察看水勢。他指著晉陽城得意地對他們兩人說:“你們看,晉陽不是就快完了嗎?早先我還以為晉水像城牆一樣能攔住敵人,現在才知道大水也能滅掉一個國家呢。”韓康子和魏桓子表麵上順從地答應,心裏暗暗吃驚。原來魏家的封邑安邑(今山西夏縣西北)、韓家的封邑平陽(今山西臨汾縣西南)旁邊各有一條河道。智伯瑤的話正好提醒了他們,晉水既能淹晉陽,說不定哪一天安邑和平陽也會遭到晉陽同樣的命運呢。