春秋时期,晋国奸臣屠岸贾鼓动晋景公灭掉于晋国有功的赵氏家族。屠岸贾率3000人把赵府团团围住要把赵家全家老小杀得一个不留。幸好赵朔之妻庄姬公主已被秘密送进宫中。屠岸贾闻讯欲赶尽杀绝,要晋景公杀掉公主。
公主托君母成夫人的庇护,幸存一命。公主已身怀有孕,屠岸贾见景公不杀她,就定下斩草除根之计,准备杀掉婴儿。公主生下一男婴,屠岸贾亲自带人入宫搜查。公主将婴儿藏在裤内,躲过了搜查。屠岸贾猜测婴儿已被偷送出官,立即悬赏缉拿。
赵家忠实门客公孙杵臼与程婴商量救孤之计:如能将一婴儿与赵氏孤儿对换,我带这一婴儿逃到首阳山,你便去告密,让屠贼搜到那个假赵氏遗孤,才会停止搜捕,赵氏嫡脉才能保全。程婴的妻子此时也生下一男婴,他决定用亲子替代赵氏孤儿。他以大义说服妻子忍着悲痛让公孙许臼把儿子带走。
程婴依计向屠岸贾告密,屠岸贾迅速带兵追到首阳山,在公孙杵臼居住的茅屋,搜出一个用锦被包裹的男婴,于是摔死了婴儿。屠岸贾认为已经斩草除很,放松了警戒。
在忠臣韩厥的帮助下,一个心腹假扮医生,入宫给公主看病,用药箱偷偷把婴儿带出宫外。程婴听说自己的儿子被屠岸贾摔死,强忍悲痛,带着孤儿逃往外地。15年后,孤儿长大成人,知道自己的身世后,在韩厥的帮助下兵戈讨贼,杀了奸臣屠岸贾,报了大仇。
程婴见赵氏大仇已报,陈冤已雪,不肯独享富贵,拔剑自刎,他与公孙杵臼合葬一墓,后人称“二义冢”。他们的美名千古流传。