On 20 September 1958, Gallagher provisionally signed for Celtic and made his full debut on 6 March 1959. Jock Stein signed him as a full professional on the same day. Gallagher was part of the Lisbon Lions squad that won the 1967 European Cup Final, although he did not play in the final. The same year, Gallagher became the first Scottish born player to play for the Republic of Ireland when he travelled to Ankara on 22 February 1967 to represent Ireland against Turkey.
Gallagher played for Celtic for over ten years, making a total of 171 appearances and scoring 32 goals including 106 Scottish League appearances and 17 league goals. He also played in 13 European games. Gallagher remained at Celtic until 1 May 1970, when he transferred to Dumbarton. He retired from playing in April 1973. Gallagher worked as a scout for Celtic from April 1976 to April 1978.