He began his career at Barnsley, making his debut for the club in the Premier League in January 1998. Barnsley were relegated at the end of the season, and he would stay on at the club to make a total of 212 league and cup appearances across six seasons, scoring eight goals. He signed with Sheffield United in July 2003 and was soon appointed club captain. He was named as the club's Player of the Year in 2004 and helped the club to secure promotion out of the Championship in 2005–06, though United's stay in the Premier League lasted only one season. He went on to score 16 goals in 279 league and cup appearances in nine seasons at Bramall Lane. He was sent off six times each for Barnsley and Sheffield United, holding the club record for red cards at both clubs.