司马光的远祖可追溯到西晋皇族安平献王司马孚。原籍属河内(今河南沁阳)。司马光的父亲司马池曾为兵部郎中、天章阁待制(属翰林学士院),在藏书阁担任皇帝的顾问,官居四品,一直以清廉仁厚享有盛誉。
宋仁宗时中进士,英宗时进龙图阁直学士。宋神宗时,王安石施行变法,朝廷内外有许多人反对,司马光就是其中之一。王安石变法以后,司马光离开朝廷十五年,专心编纂《资治通鉴》,用功刻苦、勤奋。用他自己话说是:“日力不足,继之以夜。”
宋仁宗末年任天章阁待制兼侍讲知谏院,他立志编撰《通志》,作为封建统治的借鉴。治平三年(1066年)撰成战国迄秦的八卷上进,英宗命设局续修。神宗时赐书名《资治通鉴》。王安石行新政,他竭力反对,与安石在帝前争论,强调祖宗之法不可变。被命为枢密副使,坚辞不就。次年退居洛阳,以书局自随,继续编撰《通鉴》,至元丰七年(1084年)成书。他从发凡起例至删削定稿,都亲自动笔。元丰八年宋哲宗即位,高太皇太后听政,召他入京主国政,次年任尚书左仆射、兼门下传郎,数月间尽废新法,罢黜新党。为相八个月病死,追封温国公。遗著有《司马文正公集》《稽古录》等,还有诸多名著被众人所流传。
虽然司马光为人温良谦恭、刚正不阿,是杰出的思想家和教育家。顾栋高《司马温公年谱序》:“唯公忠厚质直,根于天性,学问所到,诚实金石。自少至老,沉密谨慎,因事合变,动无过差。故其文不事高奇,粥粥乎如菽粟之可以疗饥,参苓之可以已病。”但政治生涯并不突出,其人为中国古代士大夫保守思想典型代表,尽管他认为“王安石等所立新法,果能胜于旧者存之”,但实际却是甚为不满新法。宋朝在多次战争中败北,国势已经到了刻不容缓之境地。但由司马光反对王安石可以显示出其保守的主张,对他而言宗法及伦理纲常对国家是比较重要的。
北宋哲宗元祐年间废除熙宁、元丰时新法的事件。元丰八年(1085),神宗死,子煦(哲宗)继位,年幼,祖母宣仁太后高氏垂帘听政,陆续起用司马光、吕公著、范纯仁、吕大防等,废除神宗与王安石推行的大部分新法。贬黜熙宁、元丰时用事诸臣,停止使用王安石《三经新义》为科举考试的根据,修改熙宁、元丰时史官记录,重新编纂《神宗实录》。此外,还将神宗时所取米脂等四寨还给西夏。