W 1979 ukończył studia z zakresu historii na Wydziale Filozoficzno-Historycznym Uniwersytetu Jagiellońskiego. W 1988 na tej samej uczelni uzyskał stopień doktora nauk humanistycznych w zakresie historii. W 1996 na UJ uzyskał stopień doktora habilitowanego. 21 października 2003 otrzymał tytuł profesora nauk humanistycznych.