Христо Николов Петрунов е роден на 14 октомври 1859 година в Самоков. Завършва 5 класно образование в Пловдив (съвременно основно образование). След полагане на изпит, на който е сред петимата с много добро представяне постъпва в командата на волноопределящите се.
На 31 август 1878 година ефрейтор Петрунов е произведен в чин унтер-офицер. Зачислен е като взводен унтер-офицер в 23-та Казанлъжка дружина, като на 23 ноември 1878 година е отписан от дружината и приет в новосъздаденото Военно училище.
Завършва в първия випуск на Военното училище в София през 1879 г. (първи разряд). На 10 май старши портупей юнкер Петрунов е произведен в чин подпоручик и зачислен в 1-ва софийска конна сотня.
Година по-късно е назначен за адютант-ковчежник в конвоя на Н.В. княз Александър I Батенберг. На 24 юни 1882 година е произведен в чин поручик, след което е командирован в Русия, в 38-и драгунски владимировски полк, от където през 1884 година постъпва в Офицерската кавалерийска школа в Санкт Петербург, която завършва през същата година.
Завръща се в България и през февруари 1885 година е назначен за командир на 3-ти ескадрон от 1-ви конен полк. На 24 юни същата година е произведен в чин ротмистър.
По време на Сръбско-българската война (1885) ротмистър Петрунов е командир на 1-ви конен полк, с който взема участие в Бой при Цариброд (11-12 ноември) и Пирот (14-15 ноември).
На 1 април 1887 година ротмистър Петрунов е произведен в чин майор и през следващата година е назначен за „почетен флигел-адютант“ и зачислен завинаги в списъците на 1-ви конен полк. На 2 август 1891 година е произведен в чин подполковник, 2 август 1895 година е произведен в чин полковник, а на 14 февруари 1900 в чин генерал-майор.
В периода (1902 – 1898) е началник на Кавалерийската дивизия, а от март 1900 година преминава в запаса.
При започването на Балканската война (1912 – 1913) генерал Христо Петрунов излиза от запаса и е назначен за заместник-инспектор на Конницата, а по време на Междусъюзническата война (1913) е командир на Македонската полева подвижна конница, която действа срещу сръбската армия при Пирот и Ниш.
През Първата световна война (1915 – 1918) е началник на 3-та дивизионна област (1916).
Генерал-майор Христо Петрунов умира след 1937 година. Точната дата на смъртта му не е известна.
Гвардейската униформа на генерала, която е екземпляр на най-старата гвардейска униформа, е изложена в Националния военноисторически музей.
Генерал Христо Петрунов е брат на българския офицер полковник