苏武听卫律让他投降匈奴,怒气冲冲地说:“卫律你这个无耻之徒。你是汉人的儿子,做了汉朝的臣下。你厚颜无耻的做了汉奸,背叛了父母,背叛了朝廷,还有什么脸面来同我说话。”
卫律碰了一鼻子灰,只好向单于报告。单于便把苏武下了地窖,不给他饮食,想用长期折磨的办法,逼他屈服。这时候正是入冬天气,外面下着鹅毛大雪。苏武忍饥挨饿。渴了,就捧一把雪止渴;饿了,就扯一些皮带、羊皮片什么的啃着充饥。
过了几天,单于见折磨他也没用,只好把了放出来,说要封他为王,苏武说什么也不答应。单于只好又把他送到北海(今贝加尔湖一带)边去放羊,还说:“等公羊生了小羊,就放你回去。”公羊怎么能生小羊?这么说无非是想把苏武长期监禁罢了。
苏武到了北海边,身旁什么人都没有,和他作伴的只有那一群公羊和那根代表汉朝的旌节。苏武拿着那根旌节从不离手,连晚上睡觉也搂在怀里,他总想着有一天,拿着旌节回到自己的国家。
北海终年白雪皑皑,荒原千里,人迹罕见。为了生存下去,回汉复明,苏武经常取野鼠洞里的草籽来充饥。岁月悠悠,北海的风雪染白了他的须发,冻饿练就了他铮铮硬骨,苏武在北海一呆就是十九个年头。
汉武帝死后,汉昭帝即位,匈奴又跟汉朝进行和议。这时昭帝年纪还小,大臣霍光掌握着朝中大权,他对匈奴使者提出要求说要放回苏武等匈奴扣押的汉朝使者。可是,匈奴人却骗汉朝大臣说苏武已死了。与苏武一同出使的副使常慧被单于流放到别处,现在也活着,他收买了匈奴兵,得到了与汉使见面的机会。常惠告诉使者苏武还活着,并出了一个主意,让汉使救苏武。
第二天,使者去见单于,提出放苏武回朝的要求。单于说:“我早说过,苏武已经死了。”使者脸色一沉道:“你们说想和汉朝和好,我看你们根本无诚意。苏武根本就没有死。有一天,我们皇上在上林苑里射猎,射下一只大雁,那大雁脚上系有一封信,说苏武就在北海牧羊。”单于听使者这么一说,不觉大惊。只好承认苏武还活着,并派人将苏武从北海接回。汉昭帝始元六年(公元前81年)的春天,苏武、常惠等9人才回到久别的首都长安。苏武出使的时候,是个40岁左右的壮年汉子,他在匈奴度过了19年异常艰苦的岁月,回来已经是个须发全白的老年人了。他坚强不屈,不怕磨难,永不失节的非凡事迹,轰动了朝野上下,不论是做官的,还是普通老百姓,一提起苏武的名字,没有一个不钦佩的。