W latach 1965–1970 odbył studia z zakresu historii na Uniwersytecie Warszawskim. Od 1970 do 1972, również na UW, studiował dziennikarstwo. Doktoryzował się w 1981 w Instytucie Historii PAN w Warszawie. Stopień doktora habilitowanego uzyskał w 1990. Postanowieniem Prezydenta RP z 15 marca 2002 otrzymał tytuł profesora nauk humanistycznych.