Gimė 1948 m. balandžio 17 d. Kauno mieste, tarnautojų šeimoje.
1972 m. baigė Kauno medicinos institutą, biofizikas. 1973-1977 m. dirbo Lietuvos Mokslų akademijos Matematikos ir kibernetikos institute jaunesniuoju moksliniu bendradarbiu, 1977-1982 m. - Lietuvos žemės ūkio akademijoje vyresniuoju dėstytoju, 1982-1986 m. - Cheminių junginių biologinio tyrimo instituto Kauno filiale vyresniuoju moksliniu bendradarbiu, 1986-1990 m. - Kauno medicinos instituto Centrinėje mokslinių tyrimų laboratorijoje vyresniuoju moksliniu bendradarbiu.
1990 m. išrinktas į LTSR Aukščiausiąją Tarybą.
1990-1992 m. - Lietuvos užsienio reikalų ministras.
1988-1990 m. - Lietuvos Persitvarkymo Sąjūdžio Seimo politinės komisijos pirmininkas.
Lietuvos Krikščionių demokratų partijos pirmininko pavaduotojas.
Žmona Laima - chemikė, dirba Kauno Medicinos akademijos klinikoje. Du vaikai: Eglė ir Saulius. Dukra studentė VDU, sūnus mokosi Vilniaus S.Nėries mokykloje.
Išrinktas : Daugiamandatė (LKDP, L. polit. kal.ir tremtinių sąj.)