Han var søn af toldforvalter i Præstø A.C. Madsen og hustru født Gamél. Han blev gift første gang med Marie Ernestine Laurentze, født Gamél (død 1885), anden gang med Karen Marie, født Nielsen, født 10. december ved Hillerød. Madsen var elev i Den kongelige militære Højskole 1848-53, deltog i Treårskrigen fra 1850, blev sekondløjtnant 1853, 1854 premierløjtnant i artilleriet. Han gennemgik 1855-57 Den kongelige militære Højskoles stabsafdeling, hvor efter han kom til tjeneste ved Generalstabens topografiske Afdeling (senere Geodætisk Institut) og blev sekondkaptajn og adjoint i 1861. I december 1863 blev han souschef ved 2. armédivision (under Glode du Plat). Han deltog i kampene den 17. og 28. marts 1864, men ansattes derefter som kommitteret ved korpsintendanturen, for hvilken han også en kort tid fungerede som chef, hvor efter han vendte tilbage til Generalstaben. 1864 blev han Ridder af Dannebrog. Hans virksomhed her gav anledning til, at han 1863 i Annaler for nordisk Oldkyndighed og Historie skrev en afhandling om sjællandske stednavne samt 1871 i Tidsskrift for Landøkonomi: "Højdeforholdene paa den sjællandske og fynske Øgruppe". I 1866 blev han sekretær i den samme år nedsatte forsvarskommission og i 1870 lærer i hærordning og krigskunst ved Hærens Officerskoles ældste klasse, idet han samtidig ansattes ved 2. artilleribataljon. Som lærer udgav han foruden Udsigt over Hærordningens vigtigste Grundsætninger og Forhold (1880), en vejledning i generalstabstjeneste samt flere afhandlinger i Tidsskrift for Krigsvæsen. Sammen med daværende kaptajn Hoskiær sendtes han i 1878 til Tyrkiet for at indhente oplysninger om Plewnas forsvar. Forfremmet til oberst 1879 gjorde han først tjeneste ved artilleristaben, var 1880-83 chef for 1. artilleriafdeling, 1883-89 chef for trænafdelingen, 1889-92 chef for tøjhusafdelingen og 1892-95, da han afskedigedes fra krigstjenesten, chef for 2. artilleriregiment. I 1887 sendtes han som chef for en deputation af den danske hær til den militærfest, som byen Chicago afholdt i anledning af sin 50-årige beståen.  Madsen blev Dannebrogsmand 1882, Kommandør af 2. grad af Dannebrogordenen 1890 og Kommandør af 1. grad ved sin afgang 1895.  Senere forfatterskab I Militært Tidsskrift 1898-1900 offentliggjorde han "Studier over Danmarks Hærvæsen i 16. Aarhundrede", hvilende hovedsagelig på utrykte kilder, i Historisk Tidsskrift flere afhandlinger, blandt andre en udsigt over svenske skrifter vedrørende krigshistorien, og i Geografisk Tidsskrift oversigter over de vigtigste af danske foretagne rejser og forskninger i lande uden for Europa. Han blev tidlig medlem af Det Kongelige Danske Geografiske Selskabs råd og var i flere år, indtil 1913, dettes formand. I Dansk Artilleri-Tidsskrift, hvis oprettelse han støttede marts 1917, har han udgivet "Oberst Bang’s Excerpter".  Han er begravet på Assistens Kirkegård.