赵恒历封韩王、襄王和寿王,曾任开封府尹。至道元年(995年),被立为太子,改名恒。至道三年(997年),即位为帝。赵恒即位之初,任用李沆等为相,勤于政事。景德元年(1004年),在主战派寇准等人的劝说下,北上亲征,与入侵的辽军会战于澶渊。
当时局势有利于北宋,但因赵恒惧于辽的声势,并虑及双方交战已久、互有胜负,以每年给辽一定银绢(岁币)为条件,于澶渊定盟和解,约为兄弟之国,即为“澶渊之盟”。此后,北宋进入经济繁荣期,史称“咸平之治”。赵恒在位后期,任王钦若、丁谓为相。二人常以天书、符瑞之说蛊惑朝野,而赵恒也沉溺于封禅之事,广建宫观,劳民伤财,致使社会矛盾加深。
乾德六年(968年)十二月二日(12月23日),赵恒生于东京开封府第,是宋太宗赵光义第三子,与楚王赵元佐为同母兄弟,初名赵德昌。他幼时英睿,姿表特异。与诸王嬉戏时,喜欢作战阵之状,自称“元帅”。宋太祖喜爱赵恒,将他养在宫中。
《宋史·卷六本纪第六·真宗一》记载:真宗应符稽古神功让德文明武定章圣元孝皇帝,讳恒,太宗第三子也。母曰元德皇后李氏。初,乾德五年,五星从镇星聚奎。明年正月,后梦以裾承日,有娠,十二月二日生于开封府第,赤光照室,左足指有文成“天”字。幼英睿,姿表特异,与诸王嬉戏,好作战阵之状,自称元帅。太祖爱之,育于宫中。
太平兴国八年(983年),被授为检校太保、同中书门下平章事,封韩王,并改名赵元休。雍熙三年(986年)七月,改名赵元侃。
端拱元年(988年),封襄王。淳化五年(994年)九月,进封寿王,加检校太傅、开封府尹。开封府政事纷繁,赵恒留心狱讼,裁决轻重,没有不为众人称快的。所以开封的监狱多次空闲,太宗多次下诏褒奖他。
至道元年(995年),被立为太子,改名赵恒,仍兼开封府尹。赵恒既非太宗的长子,也不是皇后所生,原本是轮不上他继位的。但其长兄赵元佐因叔父赵廷美之死发疯、二哥赵元僖无疾暴死,他才有幸成为太子。
按照惯例,作为皇太子,赵恒在上殿时的位次在宰相之上,东宫僚属称臣,赵恒都推让不接受。看到辅导自己的太子宾客李至、李沆,他一定先行拜礼,迎来送往都要到宫门外的台阶。
至道三年(997年)三月,太宗驾崩。太宗驾崩后,赵恒遭遇了由太监王继恩和李皇后(明德皇后)共同谋划的宫廷政变,宰相吕端一力挫败政变,于同月扶立赵恒继位,是为宋真宗。次年,改年号为“咸平”。
《宋史·卷六本纪第六·真宗一》记载:三年三月,太宗崩,奉遗制即皇帝位于柩前。……咸平元年春正月辛酉,诏改元。