Studia prawnicze odbył w latach 1960–1965 na Uniwersytecie Marii Curie-Skłodowskiej i Uniwersytecie Warszawskim. Od 1965 r. zatrudniony w Katedrze Prawa Karnego i Kryminologii UMCS. W 1970 obronił pracę doktorską na temat „Odpowiedzialność karna za nieprzeszkodzenie przestępstwu” (praca otrzymała I nagrodę w konkursie prac doktorskich redakcji miesięcznika Państwo i Prawo). W 1975 przedstawił pracę habilitacyjną na temat „Współsprawstwo w polskim prawie karnym” (I nagroda w konkursie prac habilitacyjnych Państwa i Prawa). Od 1986 r. profesor nadzwyczajny nauk prawnych, od 1992 r. profesor zwyczajny.
Od 1995 kierownik Zakładu Prawa Karnego Porównawczego Wydziału Prawa i Administracji UMCS (pierwsza w Polsce jednostka naukowa specjalizująca się w badaniu zagranicznego prawa karnego, w 2002 przekształcona w Katedrę Prawa Karnego Porównawczego). W latach 1982–1989 wykładowca prawa karnego na Katolickim Uniwersytecie Lubelskim, w latach 1989–1997 wykładowca postępowania karnego tamże (jednocześnie nadal wykładowca prawa karnego i prawa karnego porównawczego na UMCS).
Od 1997 sędzia Sądu Apelacyjnego w Lublinie, w 2000 r. delegowany do Sądu Najwyższego. Był członkiem komisji, która przygotowała Kodeks karny z 1997, a następnie przewodniczącym Komisji do Spraw Reformy Prawa Karnego przy Prezydencie RP.
Autor ponad 200 prac naukowych publikowanych w języku polskim, niemieckim, angielskim, francuskim, portugalskim, rosyjskim, japońskim. Specjalista w dziedzinie prawa i procesu karnego, znawca międzynarodowego i zagranicznego prawa karnego. Członek rzeczywisty PAN, a także licznych krajowych i międzynarodowych towarzystw naukowych. Stypendysta Fundacji im. Aleksandra von Humboldta. Stypendysta i wykładowca w kilkudziesięciu ośrodkach naukowych w Europie, Azji i Ameryce Północnej. Wielokrotnie odznaczany, w tym Krzyżem Komandorskim Orderu Odrodzenia Polski (2003).