早在建衡元年、晋武帝泰始五年(269年)二月,晋武帝司马炎就有了灭吴的志向。十一日,他除任命大将军卫瓘、司马伷分镇临淄、下邳,加强对孙吴的军事布置外,又特地调任羊祜为荆州诸军都督。当时,西晋和孙吴各有一个荆州,形成南北对峙局面。
天纪二年(278年),太傅羊祜向晋武帝当面陈述伐吴的计划,晋武帝非常赞赏。
天纪三年(279年)四月,孙皓每次宴会群臣都要把大臣们灌醉。他设置了黄门郎10人,专门负责搜集大臣们的过失。每次宴会结束以后,这10个人就向孙皓汇报大臣们的过失,凡是大臣中有抵触的、说了错话的,都向孙皓举报,严重的被判刑、处死,轻的也要当作罪状记录下来;有的被剥下脸上的皮,有的被挖去眼睛,因此朝廷上下人心相离,没有人肯为孙皓尽力。
西晋名将、益州刺史王濬(濬通浚)上书请求速伐东吴,王濬对晋武帝司马炎说:“孙(皓)荒婬,凶暴反常,应当迅速地征讨他。如果一旦孙(皓)死了,吴国又立了一个贤明的君王,那么就成为我们的强敌了。我造船已经7年,每天都有船因腐烂而毁坏;我年已70,离死亡没有几天了。”实际上,此时王濬的年龄已有73岁,他仍然坚决要求率军伐吴,可见其人老志不老。晋武帝于是下定决心伐吴。
十一月,晋朝大举出兵讨伐吴,派遣镇军将军、琅邪王司马伷从涂中(今安徽滁州)出兵,安将军王浑从江西出兵,建威将军王戎出武昌,平南将军胡奋出夏口(今湖北省武汉市),镇南大将军杜预出江陵,龙骧将军王浚和巴东监军鲁国人唐彬从巴、蜀进军,东西合计共有20余万人。任命贾充为使持节、假黄、大都督,任命冠军将军杨济协助贾充,作贾充的副手。贾充坚持陈述伐吴不利,而且自称已经衰老,不能担当元师的重任。晋武帝下诏说:“你如果不去,那么我就亲自出征。”贾充不得已,于是接受了符节与斧,率领中军向南驻扎在襄阳,负责各部队的部署、调度与节制。
晋武帝太康元年(280年),也即孙皓天纪四年,孙权开创的东吴王朝,进入了最后阶段。这年二月,王濬、唐彬打败了丹阳监盛纪。
早在孙皓凤皇元年、晋武帝泰始八年(272年),晋武帝司马炎就命令王浚解散屯田军,大量建造战船。大战船船身长度为120步,能容纳2千余人,用木头造成楼,筑起望敌军的高台,四面开出可以进出的门,船上可以骑着马往来奔跑。
当时造般砍削下的木片,遮盖了江面,顺江水而下,吴国建平太守、吴郡人吾彦,拿着顺江流而下的木片禀报孙皓说:“晋国必然有攻吴的计划,应当增加建平的兵力,以堵住要害地区。”孙皓不听,吾彦就用铁锁链横拦江面,还打造了一丈多长的大铁锥,暗中放进江里,用以阻止晋船东下。
王濬造了几十个大木筏,每一个木筏,长、宽都有100余步。王濬让人扎了许多草人,草人披铠甲,拿兵器,放在大木筏上,让水性好的人与木筏走在前面,遇到铁锥,铁锥就扎到木筏上,被木筏带走了。王濬又造了许多大火把,火把长十几丈,有几十围粗,用麻油浇在火把上,把火把放在船的前面,遇到铁锁就点燃火把,一会儿功夫,铁锁就被火把烧得融化而断开,于是战船就无所阻挡。十八日,晋武帝下诏书说:“王濬、唐彬已经平定了巴丘,再与胡奋、王戎一同平定夏口、武昌,顺长江长驱直入,直到秣陵。
孙皓听说晋将王浑领兵南下,就派丞相张悌,督率丹阳太守沈莹、护军孙震、副军师诸葛靓率领部众3万人渡过长江迎战。
这时候,王浚从武昌顺着长江直接向建业进逼。孙皓派遣游击将军张象率领舟师1万人抵抗。张象的部下望见王浚的旌旗就投降了。这时候,江中满满的全都是身披铠甲的王浚的士兵,旌旗映照着天空,威猛的气势极其盛大。正是:“旌旗器甲,属天满江,威势甚盛,莫不破胆”(《晋书-王濬传》),吴国人异常恐惧。
孙皓的宠臣岑昏,由于阴险狡诈、谄媚逢迎而爬上了九卿的地位。他喜好大兴工程劳役,使众人深受困苦与祸患。等晋兵就要到达的时候,宫中亲近的几百名随从官吏向孙皓叩头请求说:“北方的敌军一天一天地逼近了,而我们的士兵却不拿起武器抵抗,陛下您打算怎么办呢?”孙皓问:“是什么原因?”众人回答说:“正是由于岑昏的缘故。”孙皓只说了一句:“要是这样,就拿这个奴才去向老百姓谢罪吧!”众人答应“是!”从地上爬起来就去抓岑昏,等到孙皓后悔,不断地派人去追赶制止,群臣已以“今日之祸,皆岑昏之罪”,将他碎尸万段。
这时,王浑、王浚以及琅邪王司马伷都已逼近建业附近。吴国司徒何植、建威将军孙晏都把印玺、符节送到王浑那里投降了。孙皓为了活命,采用光禄勋薛莹、中书令胡冲等人的计谋,分别派遣使者向王浑、王浚、司马伷奉上书信请求投降。孙皓又给大臣们一封信,在信中深深地谴责了自己的罪过,还说:“当前,大晋平治四海,这正是杰出优秀的人材发挥、施展其气节操守的时期,不要因为改朝换代就因此丧失了志向。”孙皓的使者先把印玺送到琅邪王司马伷那里。
三月十五日,王浚的舟师经过三山矶(今南京西南),8万士兵乘着相连百里的战船,擂鼓呐喊进入石头城(今南京)。
孙皓仿效刘禅的做法:备亡国之礼,素车白马,肉袒面缚(两手反绑),衔璧牵羊,大夫衰服,士舆榇(把棺材装在车上),率领太子孙瑾等21人来到王濬营门。王濬亲解其缚,接受宝璧,焚烧棺榇。并派人将孙皓送到晋都。
据《晋阳秋》记载:“濬收其图籍,领州四,郡四十三,县三百一十三,户五十二万三千,吏三万二千,兵二十三万,男女口二百三十万,米谷二百八十万斛,舟船五千馀艘,后宫五千馀人。”残存的文武百官,也出城投降。至此,东吴政权灭亡。三国时代也就此结束。
这里的《晋阳秋》实际上是应该是《晋春秋》,因当年作者孙盛(著名的东晋史学家),为避讳东晋元帝司马睿妃郑阿春,所改。
晋朝廷听到吴已平定的消息,大臣们都去庆贺,为晋武帝祝寿。晋武帝手持酒杯流泪说:“这是太傅羊祜的功劳。”票骑将军孙秀没有和大家一起庆贺,他面朝南方流泪说:“从前,先主孙策刚满20岁,以一个校尉的身份创下了基业,如今后主把整个江南之地都抛弃了,宗庙陵墓从此将成为废墟,悠悠青天啊,这究竟是谁造成的啊!”孙秀是早年流亡到晋的东吴宗室。
太康元年(280年)四月二十八日,晋武帝司马炎下诏,赐予孙皓爵位归命侯。29日,大赦天下,改年号为太康。晋武帝派使者犒赏王濬的部队,聚餐饮酒5天。琅邪王司马伷派使者送孙及他的宗族去洛阳。