中学就读至预科毕业。1978年毕业于香港中文大学新亚书院社会科学系，主修经济，副修中文。自1991年起，除在1997年至1998年因中华人民共和国政府另组临时立法会而被迫「落车」外，张文光一直都是循教育界功能组别，担任立法会（局）议员。2012年香港立法会选举，他转战地区直选，参与九龙西选区地区直选，排于名单第二，民主党及教协另一成员黄碧云之后。在这次选举中，他未能当选，结束21年的议会生涯。2017年，张文光获中央政府发出回乡证，是他29年来首次获发该证，6月以个人身份到访内地和亡父家乡广东台