Diplomiral je leta 1960 z univerzitetno Prešernovo nagrado na Pravni fakulteti v Ljubljani, leta 1965 pa doktoriral iz pravnih znanosti. Po prvi zaposlitvi na Inštitutu za narodnostna vprašanja je bil najprej docent in izredni profesor nato pa redni profesor za mednarodno pravo in mednarodne odnose na sedanji Fakulteti za družbene vede. Na tej fakulteti je bil direktor raziskovalnega inštituta, prodekan in dekan (1986–1988). Občasno je predaval tudi na Pravni fakulteti v Ljubljani in kot gost na številnih tujih uglednih univerzah. Tri leta (1983–1986) je bil profesor mednarodnega prava na Pravni fakulteti Univerze v Addis Abebi.
Dodatno se je izobraževal na Pravni fakulteti Univerze na Dunaju (zlasti prof. A. Verdross in prof. S. Verosta), na Max Planck Institutu za javno in mednarodno pravo v Heidelbergu, na Haaški akademiji za mednarodno pravo ter na Institutu za mednarodno pravo v Solunu. Bil je in je še član številnih mednarodnih združenj, zlasti ILA (International Law Association), IPSA (International Political Science Association) ter Jugoslovenskega in sedaj Slovenskega društva za mednarodno pravo. Je član in bivši predsednik ILC (International Law Commission), v kateri je iz celotnega sveta izvoljenih le uglednih 34 članov, strokovnjakov za mednarodno pravo, ki predstavljajo različne pravne sisteme in jih imenuje Generalna skupščina Združenih narodov.
V ILC aktivno sodeluje pri kodifikaciji in progresivnem razvoju mednarodnega prava. Je član Posvetovalnega odbora za nominacije sodnikov Mednarodnega kazenskega sodišča.
V letih 1967–1972 je bil član takratne slovenske vlade (Izvršni svet) pod predsedstvom Staneta Kavčiča, v njej pa je bil odgovoren za probleme znanosti in tehnologije. Po letu 1989 je bil veleposlanik v Indiji, ZDA in Avstriji ter nerezidenčni veleposlanik v Nepalu, Mehiki in Braziliji. Bil je stalni predstavnik (veleposlanik) pri OZN (New York) in IAEA, UNIDO, CTBTO, ODC in OVSE (Dunaj). V času od 1997 do 2000 je bil državni sekretar na Ministrstvu za zunanje zadeve, v letu 2006 in 2007 je predsedoval Svetu guvernerjev IAEA (Mednarodne agencije za atomsko energijo). Tudi v času diplomatske službe se je ukvarjal s pomembnimi mednarodnopravnimi vprašanji, kot so nasledstvo po bivši državi v mednarodnih organizacijah in pogodbah, mejna vprašanja, problematika človekovih in manjšinskih pravic.
Objavil je številne članke in razprave v domačih in tujih strokovnih publikacijah in šest knjig, od tega štiri s področja mednarodnega prava (Mednarodno pravno varstvo manjšin [The International Legal Protection of Minorities], Pravica narodov do samoodločbe [The Right of Nations to Self-Determination], Pravni status slovenske manjšine v Italiji [The Legal Status of the Slovene Minority in Italy], skupaj s prof. M. Pogačnikom Izbrane teme mednarodnega prava [Selected Topics of International Law]) ter temeljno delo o zunanji politiki: Zunanja politika – Osnove teorije in praksa [Foreign Policy – The Basics of Theory and Practice], objavljeno tudi v angleščini in albanščini. Sodeloval je s prispevki na številnih konferencah in posvetovanjih. Še vedno občasno predava mednarodno pravo na Evropski pravni fakulteti v Novi Gorici, na Fakulteti za družbene vede v Ljubljani ter na Fakulteti za evropske in državne študije na Brdu pri Kranju. Funkcijo ustavnega sodnika je nastopil 25. aprila 2008. Predsednik Ustavnega sodišča je bil od 11. novembra 2010 do 10. novembra 2013.