Equally skilled with both feet, and an outstanding centreman with the ability to pass accurately to team-mates and elude opponents, he played his first senior match with Carlton against Collingwood on 13 May 1905 (round 2), aged 22, and played his 236th and last senior match, against St Kilda, on 1 May 1920 (round 1), aged 37, when he was forced to retire following a serious knee injury.
He played in the 1906 and 1908 winning grand final sides, missed the 1907 premiership triumph over South Melbourne after breaking his nose in the previous week's Semi-Final against St Kilda.
McGregor refused; for disobeying the captain, the Carlton Committee suspended McGregor from the Carlton team for 12 months and refused to grant him a clearance for 1913.
[1] Following his suspension, he played his first match (his 146th career game) against South Melbourne in round 4).
His 236 career matches for Carlton was a club record until it was broken by John Nicholls in Round 16 of 1970.