司马迁漫游回来后,当了一名小官。不久他父亲病危,临去世前,拉着司马迁的手说:“我家世世代代都当史官,你将来也会接替这个职务。我早就想写一部通史,但这个愿望实现不了啦!你一定要继承我的事业,千万不要忘记啊!”司马迁坚定地回答说:“我虽然没什么才能,但我一定实现您的愿望!”
后来,司马迁当了史官,便如饥似渴地阅读皇家图书馆里的藏书、档案,整理和考证历史资料。那时的文字都刻在木简上或写在丝绢上,有时一部书就要堆满一间屋子,读书是很不容易的,到41岁那年,司马迁开始写《史记》。
公元前99年,武帝派自己宠妃李夫人的哥哥、二师将军李广利领兵讨伐匈奴,另派李广的孙子、别将李陵随从李广利押运辎重。李陵带领步卒五千人出居延,孤军深入与单于遭遇。匈奴以八万骑兵围攻李陵。经过八昼夜的战斗,李陵斩杀了一万多匈奴,但由于他得不到主力部队的后援,结果弹尽粮绝,不幸被俘投降了匈奴。
消息传到长安后,武帝本极为愤怒。司马迁为李陵辩护说:“李陵只率领五千步兵,深入匈奴,孤军奋战,杀伤了许多敌人,立下了赫赫功劳。在救兵不至、弹尽粮绝、走投无路的情况下,仍然奋勇杀敌。就是古代名将也不过如此。李陵自己虽陷于失败之中,而他杀伤匈奴之多,也足以显赫于天下了。他之所以不死投降了匈奴,一定是想寻找适当的机会再报答汉室。”