前455年,智伯瑶联合魏桓子、韩康子一起攻打赵襄子,包围了赵氏的封地晋阳。晋阳之战就此爆发。智伯瑶率领中军,韩家的军队担任右路,魏家的军队担任左路,三队人马直奔赵家,把晋阳城团团围住。面对智氏、韩氏、魏氏的攻打,赵襄子自知寡不敌众,吩咐将士们坚决守城,不许交战。就这样,晋阳城凭着弓箭死守了两年多。三家兵马始终没有能攻下来。智伯瑶看到很难占领晋阳,就想到水淹晋阳。他下令兵士在晋水旁边挖了一条河,一直通到晋阳,又在上游筑坝,拦住上游的水。这年正赶上雨季,水坝里的水满了,智伯瑶命令兵士在水坝上挖开了个豁口,大水直冲晋阳城。晋阳城内的军民宁可淹死,也不肯投降。
几天后,晋水淹到离城头约两米的地方,情况十分危急,智伯瑶以为胜利指日可待,他洋洋得意地说道:“我现在才知道水也可以亡国呀!”韩康子与魏桓子听后相顾无言,但彼此之间却暗自害怕:原来魏家的都成安邑、韩家的都成平阳旁边各有一条河。智瑶的话正好提醒了他们,水既能淹晋阳,说不定哪一天安邑和平阳也会遭水淹之灾。
晋阳城危在旦夕,赵襄子的谋臣张孟谈自告奋勇,深夜乘一小舟悄然潜入韩、魏两家军营,对韩康子与魏桓子说:“唇亡而齿寒,赵国灭亡之后,灭亡的命运就要轮到你们两家了。”这一句话正好击中了韩康子、魏桓子的要害,于是两家与张孟谈约定,决定共灭智氏。
前453年3月,韩康子、魏桓子带领着两家亲兵进入汾水的堤坝上,趁智氏军队不备,突然进攻,将智氏亲兵全部杀死,控制了堤坝。然后将汾水导向智氏军营。智伯瑶正在自己的营里睡着,猛然间听见一阵喊杀声,连忙从卧榻上爬起来,定睛一看,兵营里全是水。正在他惊慌不定时,四面八方响起了战鼓声,赵、韩、魏三家的士兵驾驶小船、木筏一齐冲杀过来。在三军的联合夹击之下,智家的兵士,被砍死的和淹死的不计其数。智伯瑶见势不妙想逃跑,赵襄子率领赵氏亲兵,从城中杀出,一举擒杀了智伯瑶,智氏一族被斩杀殆尽。
赵氏、韩氏、魏氏三家联手消灭执政的智氏后,平分了智家的土地,此事遭到晋出公的不满。晋出公向齐、鲁两国借兵,讨伐韩、赵、魏三卿,但反被三卿击败,晋出公在出逃途中病逝。后三卿拥立宗室姬骄为傀儡君主,是为晋哀公。在位18年的晋哀公去世后,晋幽公即位,晋幽公因恐惧三卿的权力,反而要朝见韩、赵、魏之君。到晋烈公时,周天子赐封三卿为诸侯,史称“三家分晋”。韩、赵、魏被后人称为“三晋”。自此,晋国名存实亡,同时也拉开了战国时代的序幕。