開元年(581),大興立楊廣勝為晉王。後來,他率領壹支軍隊南下摧毀陳楠。開二十年(600年)十壹月,立為太子,仁壽四年(604年)七月,繼位。在位期間修建了隋大運河?;建東都,遷都洛陽?改州為縣;改度量衡為古風;對後世影響很大。但頻繁的戰爭,如親自征討吐谷渾、高句麗三征,濫用民力,造成民頻上升,天下大亂,導致隋朝崩潰。
大業十四年(618),小果軍在江都發動兵變,楊光被叛軍殺害。