Hendrik werd in 995, na de dood van zijn vader, (als Hendrik IV) hertog van Beieren. Hij werd koning van Duitsland in 1002. Hij huwde met de heilige Cunegonde van Luxemburg, maar dit huwelijk bleef kinderloos.
In 1010 schonk hij Silva Fulnaho (het woud van Vollenhove) aan het bisdom Utrecht. Dit was feitelijk het begin van het Oversticht.
Paus Benedictus VIII kroonde hem in 1014 tot keizer. Hij richtte vele scholen op, verdedigde de rijksgrenzen, beijverde zich om vrede te stichten en de kerk tot ontwikkeling te brengen. Hendrik II startte de bouw van de kathedraal van Bazel. Op latere leeftijd raakte hij verlamd. Alhoewel hij graag monnik was geworden, bleef hij zijn taak van heerser volbrengen.
Hendrik werd, als enige Duitse keizer in 1146 heilig verklaard door paus Eugenius III. Zijn feestdag is op 13 juli. Hendrik is beschermheilige van de bisdommen Bamberg en Bazel, van kinderloze paren, van koningen en hertogen en van gehandicapten.