Pochodzi z Przedmieścia lubelskiego, ukończył szkołę przy zakładach drzewnych i LO dla pracujących. W 1953 opuścił Zamość, wrócił w 1962, długoletni pracownik PKS. Z szachami zetknął się w LO, grał we wszystkich zamojskich klubach, od "Ogniwa" poczynając, uczestniczył w mistrzostwach Lubelszczyzny, mistrz okręgu zamojskiego (1978), mistrz powiatu i miasta (1973, 1992), pomysłodawca, turnieju im. Balickiego (wygrywał 1979, 1982), zwyciężał w wielu innych imprezach, m.in. o puchary dyr. WDK i TDK (6 razy). Uczestniczył wielokrotnie w zawodach towarzyszących wielkim imprezom, np. memoriałowi A. Rubinsteina w Polanicy (ponad 20 razy). W symultanach wygrał z arcym. A. Kveinysem z Litwy (1992) i zremisował ze słynnym S. Flohrem (1967). Od 1978 posiada kat. I.
Działacz szachowy, od lat szkoli młodych szachistów, od 1977 jedyny zamojski sędzia klasy państwowej. Esperantysta. W jego domu przemieszkiwał i grał z nim młody Pekosiński. Statystował w filmie Przypadek Pekosińskiego (grał z Pekosińskim jako mistrz Polski Gromek).
* Pierwszą Partię rozegrał ze starszym bratem, gdy miał 6 lat.
* W 1998 rozegrał 1515 partii (1134 punktów).
* W 2003 zwyciężył w Otwartych Mistrzostwach Brandenburgii w ...Rowach k. Ustki!