元狩二年庚申(公元前121年),冬天十月,皇帝到雍地去,祭祀五帝。
三月戊寅日,平津献侯公孙弘去世了。壬辰日,皇帝让御史大夫乐安侯李蔡做了丞相,廷尉张汤做了御史大夫。
霍去病当了骠骑将军,带着一万骑兵从陇西出发去打匈奴。一路上经过了五个王国,连续打了六天的仗,穿过了焉支山,走了一千多里地。这一仗可厉害了,杀了折兰王,斩了卢侯王,还抓住了浑邪王的儿子以及相国、都尉,一共杀了和俘虏了八千九百多人,还缴获了休屠王用来祭天的金人。皇帝很高兴,下诏书给霍去病增加了二千户的封邑。
夏天,霍去病又和合骑侯公孙敖带着好几万骑兵一起从北地出发,不过他们分两路走。卫尉张骞、郎中令李广则从右北平出发,也是分两路。李广带着四千骑兵先走,走了几百里地,张骞带着一万骑兵跟在后面。匈奴的左贤王带着四万骑兵把李广给包围了,李广的士兵们都特别害怕。李广就让他儿子李敢带着几十名骑兵直接冲进匈奴骑兵阵中,从他们的左右两边穿过去又回来,然后告诉李广说:“匈奴人没什么可怕的!”士兵们这才安下心来。李广把军队布置成圆形的阵势,向外防御。匈奴人猛烈进攻,箭像下雨一样射过来。汉军死了一半多,箭也快用光了。李广就下令士兵把弓拉满先别放箭,他自己则用大黄弩射杀匈奴的副将,杀了好几个人,匈奴的攻势才渐渐缓和下来。到了傍晚的时候,官吏和士兵们都吓得脸色苍白,可李广还是镇定自若,还更用心地整顿军队,大家都很佩服他的勇气。第二天,他们又接着拼命战斗,汉军死伤过半,但杀的匈奴人也很多,超过了自己的损失。正好博望侯张骞的军队也赶到了,匈奴军队这才撤了回去。汉军也累得不行了,没办法去追,就收兵回去了。按照汉朝的法律,博望侯张骞行军迟缓,没按时到达,本来应该判死刑,后来他出钱赎罪,成了平民。李广的军功和损失相当,所以没有得到赏赐。而骠骑将军霍去病深入匈奴境内二千多里,和合骑侯公孙敖走散了,没会合到一起。霍去病越过居延,经过小月氏,到了祁连山,抓住了单桓、酋涂王,还有相国、都尉以及带着部众投降的有二千五百人,一共杀了和俘虏了三万零二百人,还抓到了七十多个小王。皇帝又给霍去病增加了五千户封邑,封他手下有功的副将鹰击司马赵破奴为从票侯,校尉高不识为宜冠侯,校尉仆多为煇渠侯。合骑侯公孙敖因为行军迟缓,没和霍去病会合,本来应该判死刑,也出钱赎罪成了平民。
那时候,那些老将们带领的士兵、马匹和兵器都比不上霍去病的部队。霍去病带领的士兵都是精心挑选的,而且他胆子也大,敢深入匈奴境内,还常常带着精锐骑兵走在大军前面。他的军队也好像有老天爷保佑似的,从来没陷入过绝境。而那些老将们经常运气不好,作战不顺利。就因为这样,霍去病越来越受皇帝亲近和重用,地位都快赶上大将军了。
匈奴又跑到代郡、雁门来捣乱,杀害和掳走了几百人。
江都王刘建和他父亲易王曾经宠爱的淖姬等人,还有他的妹妹征臣发生了不正当的关系。刘建有一次去雷陂游玩,赶上刮大风,他让两个郎官坐小船到陂里去。结果船翻了,两个郎官掉进水里,抱着船,一会儿露出水面,一会儿又被淹没。刘建在旁边看着哈哈大笑,还下令别去救他们,最后两个人都淹死了。刘建一共杀了三十五个无辜的人,专门干些荒淫暴虐的事。他自己知道犯的罪太多了,害怕被皇帝杀了,就和他的王后成光一起让越国来的婢女请神,诅咒皇帝。他又听说淮南王、衡山王在谋划造反,自己也开始制作兵器,刻皇帝的玉玺,准备造反的东西。后来事情被发现了,有关部门请求把他抓起来杀掉,刘建就自杀了,王后成光等人都被砍了头示众,江都国也被废除了。
胶东康王刘寄也去世了。
秋天,匈奴的浑邪王投降汉朝。当时,单于因为浑邪王、休屠王住在西边,却被汉朝杀了和俘虏了好几万人,非常生气,想把他们召回去杀掉。浑邪王和休屠王害怕了,就商量着投降汉朝,先派使者到边境拦住汉人,让他们给皇帝报信。当时,大行李息正带着人在黄河边上修城,碰到了浑邪王的使者,就赶紧派人骑马把消息报告给了皇帝。皇帝听说后,担心他们是假装投降来偷袭边境,就命令骠骑将军霍去病带兵去迎接他们。休屠王后来后悔了,不想投降,浑邪王就把他杀了,吞并了他的部众。霍去病渡过黄河后,和浑邪王的部队遥遥相望。浑邪王的一些副将看到汉军后,很多人又不想投降了,还偷偷地逃跑了。霍去病就赶紧骑马冲进去,和浑邪王见了面,把那些想逃