János brał udział w wojnach husyckich w 1420 r. Opanował chaos, który nastał na Węgrzech po przegranej bitwie pod Warną i śmierci Władysława Warneńczyka w 1444 r. Został pokonany przez Turków w drugiej bitwie na Kosowym Polu w 1448 r. Wykupiony z niewoli w 1456 r. odparł natarcie tureckie na Belgrad broniony przez brata jego żony, Michała Szilágyiego. Tam też zmarł w wyniku zarazy. Został pochowany w katedrze w Alba Iulia (Gyulafehérvár) obok swojego starszego brata. Do dziś jest uważany za bohatera Węgier, dającego przykład walki o niepodległość państwa.