Elsner je karijeru počeo u ljubljanskoj Olimpiji 1978. godine, gdje je proveo sedam sezona, odigrao 112 utakmica i postigao 12 golova.
Izgradio se u jednog od najboljih defanzivaca u bivšoj Jugoslaviji pa je 1983. prešao u Crvenu zvezdu. Tamo se zadržao četiri sezone, a u inostranstvu je nastupao za francusku Nicu i austrijsku Admiru.
Za reprezentaciju Jugoslavije odigrao je 14 susreta, a dva puta je nastupao za Sloveniju.
Nakon što je završio karijeru, uplovio je u trenerske vode.
Njegov jedan sin Luka Elsner je trener, a drugi Rok Elsner aktivan je fudbaler, a jedno vrijeme boravio je na Grbavici, gdje je branio bolje Željezničara.