战国时,秦王派遣大臣蔡泽去燕国拆散燕国和赵国的联盟。燕王听信了蔡泽的话,叫太子丹去秦国做人质,又请秦王派一个大臣来燕国当相国。
文信侯吕不韦派张唐到燕国去。张唐说:“我曾经带兵攻打过赵国,赵王对我恨之入骨。而现在去燕国一定要经过赵国,赵王一定不会放过我的,所以我不能去。”
吕不韦回到家中闷闷不乐,他的门客们也想不出个好办法。有个12岁的孩子站起来自告奋勇地说让他去说服张唐,这个小门客叫甘罗,他是甘茂的孙子。
吕不韦说:“我亲自请他,他都不肯去,难道他会听你一个小孩子的话?”
甘罗不服气地说:“有志不在年高,小孩子或许能办到大人办不到的事情。从前项橐七岁的时候,就当孔子的老师。现在我已经12岁了,我要是请不动他,您再骂我也不晚!”于是,吕不韦就让甘罗去试试。
甘罗来到张唐家中,张唐见了甘罗,心想:吕不韦真是无计可施了,派一个小孩子来做说客,便不客气地说:“小孩子要玩就到别处去玩,不要在我这里胡说八道。”
甘罗说:“我是给您报警来的。”张唐说:“我有什么危险?要你来给我报警!”甘罗反问道:“我先问您几个问题,将军的功劳与武安君白起相比谁大?”张唐说:“武安君南边打败了强大的楚国,北边打败了燕国和赵国,每战必胜,每攻必取,不知打了多少回胜仗,夺到了多少座城池,我怎么能和他比功劳呢?”甘罗又问:“那么,文信侯(吕不韦)的权力跟应侯(范雎)的权力比起来,哪个大呢?”张唐说:“当然是文信侯的权力大。”甘罗说:“应侯要攻打赵国,武安君不愿意去,离开咸阳七里就死在杜邮(今陕西咸阳市东)。现在,文信侯亲自请您上燕国当相国,将军却坚决不干,我还不知您将死在什么地方呢!”张唐看不出这么个不起眼的小孩儿能说出这番惊心动魄的话来,身上直冒冷汗,慌忙叫人整理行装,准备出发。甘罗回去对吕不韦说:“张唐已准备出发去燕国,但他怕经过赵国时有危险,这是事实。请丞相派我去赵国替他疏通疏通。”不几天,甘罗到了赵国。赵襄王到城外迎接秦国派来的使者。甘罗问:“燕太子丹上秦国做人质,大王知道吗?”赵王说:“知道。”甘罗又问:“张唐去燕国当相国,大王知道吗?”赵王说:“也听说了。”
甘罗说:“大王既然都听说了,就应当明白贵国所处的地位。燕太子丹到秦国做人质,是燕国对秦国信任的表现;张唐去燕国当相国,是秦国对燕国放心的标志。秦燕两国友好,就是为了夹击贵国,这样一来就危险了啊。您还不如将靠近河间的五座城割让给秦国,我回去求求秦王,不让张唐去燕国,并送还燕太子丹,跟他们断绝友好关系,咱们两国结成友好邻邦。如此强大的赵国去收拾那样弱小的燕国,您所得到的何止是五座城呢?”
于是赵王把河间的五座城割让给了秦国,秦国也没有让张唐到燕国。后来赵国攻打燕国,取得了上谷一带30座城池,并把其中的11座让给了秦国。
甘罗出使成功,秦王十分满意,便封12岁的甘罗为大夫。