Urodził się 17 lutego 1887 w Jarosławiu, jako syn Władysława i Anny z domu Niewiadomskiej.
W 1905 roku zdał maturę w Gimnazjum im. Króla Jana Sobieskiego w Krakowie. W latach 1905 – 1912 odbył studia lekarskie na Uniwersytecie Jagiellońskim, zdobywając dyplom doktora wszechnauk lekarskich.
Odbył obowiązkową służbę w wojsku austriackim: 1909 – 6 miesięcy w czasie studiów, 1912 – 6 miesięcy jako lekarz w Szpitali Garnizonowym w Krakowie, 1912 – podczas służby wojskowej praktykant na Klinice Położniczej UJ w Krakowie na Wydziale Lekarskim Uniwersytetu Jagiellońskiego.
Po odbyciu praktyk do połowy 1914 roku pracuje jako lekarz w Szpitalu Powszechnym w Stryju. Z chwilą wybuchu I wojny światowej jako lekarz skierowany został na front z armią austriacką, w tym również na front włoski do szpitali polowych. W 1916 roku awansowany na porucznika.
1 listopada 1918 wstępuje ochotniczo do odrodzonego Wojska Polskiego jako lekarz w randze porucznika; do marca 1921 roku brał udział w walkach o niepodległość, w tym w obronie Lwowa. 20 kwietnia 1920 otrzymuje stopień kapitana, 10 czerwca 1922 – majora, a 1 stycznia 1929 – podpułkownika. 30 listopada 1935 przeniesiony w stan spoczynku.
Od 1 listopada 1918 był szefem Oddziału Chirurgicznego Szpitala Wojskowego w Jarosławiu. W latach 1920 – 1923 starszy ordynator Oddz. Wewnętrznego Szpitala Wojskowego w Biedrusku. W latach 1923 – 1927 komendant Szpitala Wojskowego w Inowrocławiu. W latach 1927 – 1931 Komendant Sanatorium Wojskowego w Zakopanem. W latach 1931 – 1933 dowódca 5. Batalionu, potem komendant 5. Wojskowego Szpitala Okręgowego w Krakowie. W latach 1933 – 1935 komendant 2. Wojskowego Szpitala Okręgowego w Chełmie Lubelskim.
Po przejściu w stan spoczynku, od 1935 roku starszy ordynator Oddziału Zakaźnego w 2 Szpitalu Okręgowym w Chełmie Lubelskim, a w latach 1935 – 1936 lekarz Pomocy Państwowej oraz lekarz internista w Zakładzie Helclów w Krakowie. Społecznie pracował jako lekarz w w ambulatorium dla ubogich u sióstr zakonnych Szarytek przy ul. Warszawskiej w Krakowie.
1 września 1939 w ramach mobilizacji przydzielony był do 10. Wojskowego Szpitala Okręgowego w Przemyślu na stanowisku kierownika Kadry Zapasowej, z zadaniem organizowania szpitala polowego. 8 września Szpital Polowy ppłk. dr Czarnka rozkazem ewakuacji został skierowany z Przemyśla w kierunku Tarnopola, później dalej na Buczacz. 17 września nad ranem, za Tarnopolem, kolumny wojsk polskich zostały otoczone przez Sowietów i wzięte do niewoli. Pod bagnetami jeńcy dotarli do Wołoczysk, a stamtąd pociągiem w wagonach towarowych, stłoczeni, 9 dni jechali w głąb Rosji.
W grudniu 1939 dotarł jedyny list z obozu w Kozielsku, datowany 20 listopada 1939. Na rozkazie wywózki 7 kwietnia z Kozielska, nr 015/2, nazwisko Zbigniewa Czarnka znajduje się na pozycji 9.
Odznaczenia:
- Medal Pamiątkowy za wojnę 1918 – 1921
- Odznaka honorowa „Orlęta” (1919)
- Estoński Złoty Medal Czerwonego Krzyża (1931)
- Medal Dziesięciolecia Odzyskanej Niepodległości
- Złoty Krzyż Zasługi za zasługi na polu organizacji i administracji w służbie zdrowia w wojsku (1931)