Od 31 października 1997 do 19 października 1999 zajmował stanowisko ministra ochrony środowiska, zasobów naturalnych i leśnictwa w rządzie Jerzego Buzka. Następnie sprawował funkcję sekretarza stanu w Kancelarii Prezesa Rady Ministrów. Był pełnomocnikiem rządu do spraw Konwencji Klimatycznej i prezydentem V Konferencji Stron Konwencji Klimatycznej ONZ (1999–2000). W latach 2001–2005 zasiadał w Trybunale Stanu z rekomendacji Prawa i Sprawiedliwości.

Od 2001 należał do Prawa i Sprawiedliwości. W wyborach parlamentarnych w tym samym roku bez powodzenia kandydował do Sejmu z okręgu pilskim (otrzymał 4108 głosów). W wyborach w 2005 uzyskał liczbą 7042 głosów mandat posła na Sejm V kadencji z okręgu podwarszawskiego.

Od 31 października 2005 do 7 września 2007 i od 11 września 2007 do 16 listopada 2007 sprawował urząd ministra środowiska w rządach Kazimierza Marcinkiewicza oraz Jarosława Kaczyńskiego. Pomiędzy tymi okresami był sekretarzem stanu w Ministerstwie Środowiska i kierownikiem tego resortu. W wyborach parlamentarnych w 2007 po raz drugi uzyskał mandat poselski, otrzymując 15 623 głosy. Wszedł w skład Komisji do Spraw Unii Europejskiej oraz Komisji Ochrony Środowiska, Zasobów Naturalnych i Leśnictwa.