Józef Haller urodził się 13 sierpnia 1873 r. w majątku Jurczyce pod Krakowem w rodzinie Henryka Hallera von Hallenburga - ziemianina, uczestnika powstania styczniowego. Do dziewiątego roku życia wychowywał się na wsi. W 1882 r. we Lwowie, gdzie przeniosła się jego rodzina, ukończył szkołę powszechną i gimnazjum. Następnie wstąpił do wojskowej Niższej Szkoły Realnej w Koszycach na Węgrzech. Od 1890 r. uczył się w Wyższej Szkoły Realnej w Hranicach, a po jej ukończeniu studiował na wydziale artylerii w Akademii Technicznej w Mödling.

Po ukończeniu studiów został mianowany na stopień podporucznika i rozpoczął 16-letni okres służby w armii austriackiej. W 1901 r. objął funkcję instruktora w szkole jednorocznych ochotników X i XI korpusu, w 1905 r. został jej komendantem. Podczas służby przeprowadził reformę nauczania, usuwając zdemoralizowanych zawodowych oficerów ze stanowisk instruktorskich i zastępując ich ochotnikami. Wprowadził do szkół oficerskich język polski, powołując się na uchwały parlamentu wiedeńskiego, które dopuszczały częściowe używanie języka polskiego w wojsku.

W 1910 r. awansował do stopnia kapitana. Rok później, po przejściu w stan spoczynku, wydzierżawił majątek Wysocko pod Brodami i zajął się praca społeczną. W 1912 r. został członkiem Towarzystwa Gimnastycznego „Sokół” oraz głównym organizatorem Polowych Drużyn „Sokoła” w okręgu lwowskim.

Po wybuchu I wojny światowej został na krótko zmobilizowany do armii austriackiej. Następnie włączył się w organizację Legionów Polskich. Jako dowódca 3. Pułku Piechoty w II Brygadzie Legionów, we wrześniu 1914 r. wyruszył na front wschodniokarpacki, gdzie jego oddziały brały udział w ciężkich bitwach. W marcu 1915 r. rozpoczął działania organizacyjne związane z formowaniem II Brygady Legionów Polskich, a w lipcu 1916 r. objął nad nią dowodzenie.

W lutym 1918 r., protestując przeciwko postanowieniom traktatu brzeskiego, wraz z podległymi mu oddziałami przebił się przez front austriacko-rosyjski i połączył się z polskimi formacjami w Rosji. Tam otrzymał przydział na dowódcę nowo sformowanej 5. Dywizji Strzelców Polskich, a od końca marca 1918 r. dowodził jednostkami całego II Korpusu Polskiego na Ukrainie.

W lipcu 1918 r. wszedł w skład Komitetu Narodowego Polskiego, który wyznaczył go dowódcą Armii Polskiej we Francji. Na jej czele przybył w 1919 r. do kraju na front ukraiński, a w lutym 1920 r. zajął wraz z nią Pomorze Gdańskie. W czasie najazdu bolszewików w 1920 r. dowodził Frontem Północno-Wschodnim, latem tego roku wszedł w skład Rady Obrony Państwa.

Od 1922 r. do wybuchu II wojny światowej mieszkał w majątku w Gorzuchowie pod Grudziądzem. W latach 1922–1927 był posłem na Sejm z listy Chrześcijańskiego Związku Jedności Narodowej. Powrócił też do szeroko zakrojonej działalności społecznej - działał w PCK, Związku Hallerczyków, Akcji Katolickiej, Sodalicji Mariańskiej oraz ZHP, któremu przez pewien czas przewodniczył.

W maju 1926 r., przeciwny zamachowi stanu przeprowadzonemu przez Piłsudskiego, został przeniesiony w stan spoczynku. W latach 1936–1939 był jednym z organizatorów i przywódców opozycyjnego wobec sanacji Frontu Morges.

Po wybuchu II wojny światowej przebywał na emigracji we Francji, w pierwszych dniach listopada 1939 r. wszedł w skład rządu gen. Sikorskiego jako minister bez teki. Po klęsce Francji latem 1940 r. przedostał się do Wielkiej Brytanii, gdzie do 1943 r. pełnił funkcję Ministra Oświaty w Polskim Rządzie na Uchodźstwie. W 1944 r. wystąpił z niego, protestując w ten sposób przeciw współpracy z PKWN i rządem Polski Ludowej.

Po wojnie pozostał na emigracji w Londynie, gdzie zmarł 4 czerwca 1960 r. w wieku 86 lat. Został pochowany na cmentarzu Gunnersbury. W 1993 r. jego szczątki powróciły do kraju i zostały złożone w kościele garnizonowym pod wezwaniem św. Agnieszki w Krakowie.

Gen. Józef Haller był wielokrotnie honorowany najwyższymi odznaczeniami państwowymi, w tym Orderem Orła Białego i czterokrotnie Krzyżem Walecznych.