W 1980 został członkiem Niezależnego Zrzeszenia Studentów, jesienią tego samego roku został przewodniczącym struktury NZS na Wydziale Filozoficzno-Historycznym UWr. Po ogłoszeniu stanu wojennego na początku 1982 stanął na czele tajnego zarządu NZS na Uniwersytecie Wrocławskim, którym kierował do 1984.

Od 1984 pracował w Akademii Ekonomicznej we Wrocławiu, był członkiem komisji zakładowej NSZZ „Solidarność” na AE. W 1989 został pracownikiem Instytutu Socjologii UWr. Równocześnie był sekretarzem Wrocławskiego Komitetu Obywatelskiego „Solidarność” (1989–1990), a także kierownikiem założonego przez siebie Ośrodka Badań Społecznych przy RKW NSZZ „Solidarność” Dolny Śląsk (1989–1990). W 1990 został radnym Rady Miejskiej Wrocławia z listy WKO. Od 4 czerwca 1990 do 8 maja 2001 sprawował urząd prezydenta Wrocławia. Pewną popularność zyskał w czasie powodzi z 1997, osobiście kierując w mieście akcją przeciwpowodziową.