Absolwent Wydziału Prawa Uniwersytetu Jagiellońskiego. W latach 1964–1976 r. był zatrudniony w Katedrze Prawa Cywilnego Uniwersytetu Jagiellońskiego. Egzamin sędziowski złożył w 1965 r., natomiast egzamin adwokacki w 1969 r. W tym samym roku obronił rozprawę doktorską. W latach 1974–1975 odbył studia na Uniwersytecie we Fryburgu Bryzgowskim. W 1976 r. obronił rozprawę habilitacyjną. Był członkiem Rady Legislacyjnej przy Prezesie Rady Ministrów oraz wiceprezesem polsko-niemieckiego stowarzyszenia prawników. W 1992 r. został wybrany członkiem Naczelnej Rady Adwokackiej, następnie w 1998 r. jej wiceprezesem. W 2008 r. zakończył czynną działalność w organach samorządu adwokackiego. W 2004 r. został kierownikiem Katedry Prawa Cywilnego Uniwersytetu Jagiellońskiego i pozostawał na tym stanowisku, aż do przejścia na emeryturę w 2011 r. Był współorganizatorem i wykładowcą w Polnische Rechtsschule. W 2008 r. został członek kapituły konkursu Scientiae Legis Excellentia, a od 2014 r. jest członek Komitetu Naukowo-Doradczego Czech (& Central European) Yearbook of Arbitration. Od 2008 r. jest arbitrem Sądu Arbitrażowego przy Krajowej Izbie Gospodarczej w Warszawie.