高光年少时熟悉刑法，由太子舍人升任尚书郎，出为幽州刺史、颍川郡太守。晋武帝设置黄沙狱，任命他为黄沙御史，后任廷尉。元康年间，高光任尚书，主管三公曹。赵王司马伦篡位，高光没有阿附。301年（永宁元年），司马伦被赐死，晋惠帝复位。齐王司马冏辅政，高光任为廷尉、尚书，加奉车都尉。305年（永兴元年），高光从晋惠帝讨伐成都王司马颖有功，被封为延陵县公，食邑18000户。十二月，惠帝被张方所迫前往长安，高光侍奉惠帝西行。任尚书左仆射，加散骑常侍。306年（光熙元年），惠帝回洛阳，高光为太弟（皇太弟司马炽）少傅