Dwukrotnie ustanawiał rekordy Polski w chodzie na 50 km. Pierwszy raz 20 kwietnia 1997 podczas zawodów pucharu świata rozgrywanych w Podiebradach wynikiem 3:41:58, odbierając rekord Robertowi Korzeniowskiemu. Po raz drugi – poprawiając własny wynik – 2 maja 1999 roku na zawodach pucharu świata w Mézidon-Canon z czasem 3:40:08. Jego wyniki czterokrotnie znalazły się w pierwszej dziesiątce najlepszych wyników na świecie na 50 km w danym roku: w 1997 – 6. miejsce, 1998 – 2., 1999 – 2., 2002 – 9.

Od 2023 roku startuje w międzynarodowych lekkoatletycznych zawodach w kategorii masters. Według stanu na 17 września 2026 w mistrzostwach Europy i świata zdobył łącznie 31 medali, w tym 20 złotych (13 indywidualnych i 7 drużynowych). Według stanu na 17 września 2026 zdobywca 9 złotych medali mistrzostw Polski na otwartym stadionie oraz halowych na różnych dystansach. Rekordzista Polski w kategorii M50 na chodziarskich dystansach: 3000 m, 5000 m, 10 000 m, 3 km, 5 km, 10 km, 3000 w hali;