Callaghan played on the right-wing for a number of clubs including
Watford,
Derby County and
Aston Villa. Internationally, he represented England at
Under-21 level and played one game for
England B in November 1984 (alongside fellow Watford player
Luther Blissett). Callaghan came on as a half time substitute to take part in a 2–0 win against a full New Zealand side. Whilst at Watford, he played in the
1984 FA Cup Final where they lost to Everton. He had broken into their first team during the
1980–81 season and helped them win promotion to the First Division
a year later. He also helped them finish second in the league in 1983. In total, he played 223 league games for the Hornets and scored 41 goals, before being transferred to Derby County in February 1987. He scored four goals in 18 Second Division games for the Rams in the
1986–87 season as they cruised to the division championship and a return to the First Division after seven years away. Callaghan was ever present for Derby as they secured their top-flight status in
1987–88, and he began the
1988–89 season well as Derby emerged as surprise title challengers (though they eventually had to settle for a fifth-place finish). He scored twice in 18 league games before moving to
Aston Villa in February 1989 and making 16 league appearances for them (scoring once) as they secured their First Division survival a year after promotion. He played just eight games for Villa the following season, however, as they finished second and were beaten to the league title by
Liverpool. He played just twice in the
1990–91 season and was loaned back to Derby County. He also had loan spells with Huddersfield Town and Watford before new manager
Ron Atkinson finally gave him a free transfer at the end of the
1991–92. Aged still only 29, his professional career was over, although he did continue playing for a while at non league level with Stafford Rangers. ==Retirement==