徐氏祖居苏州,以务农为业,后迁至上海。徐光启的祖父因经商而致富,及至父亲徐思诚家道中落,仍转务农。
明嘉靖四十一年(1562年),徐光启出生于太卿坊(今上海市黄浦区乔家路)。少年时代的徐光启在龙华寺读书。
明万历九年(1581年),应金山卫试中秀才后,他在家乡教书,并娶本县处士吴小溪女儿为妻。
万历十年(1582年),第一次乡试不中。为了维持家计,徐光启和他父亲一样“弱冠补诸生高等,食讫学宫,以家贫,故教授里中子弟。”
万历十二年(1584年),祖母卒,徐光启的父母又过半百,加上水灾,徐光启家道每况俞下。
万历十六年(1588年),徐光启为了寻找出路,和同乡董其昌、张鼎、陈继儒一起到太平府(今安徽当涂)应乡试,徐光启却落第。
万历二十一年(1593年),徐光启赴广东韶州任教,并结识了耶稣会士郭居静。
万历二十四年(1596年),转至广西浔州任教。
万历二十五年(1597年),徐光启因考官焦竑赏识而以顺天府解元中举。
万历二十六年(1598年),会试他未能考中进士,回到家乡教书。
万历二十八年(1600年),他赴南京拜见恩师焦竑,与耶稣会士利玛窦第一次晤面。
万历二十九年(1601年),徐光启没有参加会试。
万历三十一年(1603年),他在南京由耶稣会士罗如望(Jean de Rocha)受洗加入天主教,获教名保禄(Paul)。
万历三十二年(1604年),徐光启中进士,考选翰林院庶吉士。
万历三十四年(1606年),他开始与利玛窦合作翻译《几何原本》前6卷,次年春翻译完毕并刻印刊行。翻译完毕《几何原本》后,他又根据利玛窦口述翻译了《测量法义》一书。
万历三十五年(1607年),三年翰林馆期满告散,他被授予翰林院检讨。同年徐光启的父亲在北京去世,他回乡丁忧守制。
万历三十六年(1608年),邀请郭居静至上海传教,这成为天主教传入上海之始。守制期间,他整理定稿了《测量法义》,并将《测量法义》与《周髀算经》《九章算术》相互参照,整理编撰了《测量异同》,作《勾股义》一书,探讨商高定理,开辟双园、农庄别墅,进行农作物引种、耕作试验,作《甘薯疏》《芜菁疏》《吉贝疏》《种棉花法》和《代园种竹图说》。
万历三十八年(1610年),徐光启回到北京,官复原职。因钦天监推算日食不准,他与传教士合作研究天文仪器,撰写了《简平仪说》《平浑图说》《日晷图说》和《夜晷图说》。
万历四十年(1612年),他向耶稣会教士熊三拔(P. Sabbathino de Ursis)学习西方水利,合译《泰西水法》6卷。
万历四十一年(1613年),初冬,因与朝中一些大臣意见不合,徐光启告病去职前往天津。他在房山、涞水两县开渠种稻,进行各种农业实验,先后撰写了《宜垦令》《农书草稿》《北耕录》等书,为《农政全书》的编写打下了基础。
万历四十四(1616年),年礼部侍郎沈榷连上三张奏疏,请求查办外国传教士,是为南京教难。徐光启上《辩学章疏》为传教士辩护。同年徐光启回京复职,次年任詹事府左春坊左赞善。后病归天津,作《粪壅规则》。
万历四十六年(1618年),后金努尔哈赤发兵进犯关内,徐光启应召星夜入京。
万历四十七年(1619年),萨尔浒之战明军战败,他多次上疏请求练兵,后擢升少詹事兼河南道御史,在通州督练新军。但由于军饷、器械供应困难,练兵计划并不顺利。
明天启元年(1621年),三月徐光启上疏回天津养病,六月辽阳失陷,他又奉召返京,力请使用红夷大炮帮助守城,但因与兵部尚书意见不合,十二月再次辞归。
天启三年(1624年),徐光启擢升为礼部右侍郎兼侍读学士等职,当时朝中魏忠贤专权,他不肯就任,次年他便遭谗劾去职。徐光启回到上海后,将积累多年的农业资料“系统地进行增广、审订、批点、编排”,编撰而成后来的《农政全书》。他同毕方济(P.Franciscus Sambiasi)一起合译了《灵言蠡勺》。他还把自己关于军事方面的文章辑录成书,刻印刊行了《徐氏庖言》。
天启四年(1625年),徐光启退隐之后,将主要精力集中在增订、批改以前所辑《农书》上,经过勤奋钻研,日夜笔耕,终于在天启四年(1627年)完成了《农政全书》的初稿。
明崇祯元年(1628年),徐光启奉召回京,官复原职。
崇祯二年(1629年),他又擢升礼部左侍郎。因钦天监推算日食失准,崇祯皇帝同意由徐光启主持开局修历。同年,皇太极率领兵数万人进逼京畿,崇祯帝召集大臣平台议事,徐光启奏对战守之事。
崇祯三年(1630年),升任礼部尚书。
崇祯四年(1631年),陆续进献历书多卷,即《崇祯历书》。
崇祯五年(1632年),以礼部尚书兼东阁大学士,入参机务。
崇祯六年(1633年),加太子太保、兼文渊阁大学土,同年11月8日病逝于任上,谥文定。