Born in Manchester, Edwards started his career with Crewe Alexandra, never making the first team he dropped into non-league football with Ashton United, He went on to play for Curzon Ashton, before signing with Doncaster Rovers and making nine Third Division appearances during the second half of the 1997–98 season. He left Belle Vue as Danny Bergara's "Donny" were relegated in last place at the end of the campaign. He returned to non-league football with Leigh Genesis and then Altrincham, featuring in nine Northern Premier League Premier Division games for "Alty" during the 2000–01 season. He returned to the Football League with Second Division club Swindon Town for the start of the 2001–02 season. After the season finished he signed with Welsh club Wrexham in June 2002. He spent two seasons at the Racecourse Ground before rejecting a new contract with the club, instead joining Blackpool. After 31 games for the "Seasiders" in the 2004–05 season he joined Oldham Athletic on a free transfer in May 2005.
Port Vale
Rejecting a new deal at Oldham, Edwards signed with Port Vale in June 2007. After not making much of an impression at Vale Park he was placed on the transfer list. After hearing about this he gave an outburst in The Sentinel claiming he was the best player playing at Port Vale. Despite denying the remarks, he was booed onto the pitch the following game against Bournemouth. Vale lost that game 3–1 but the game after that against Yeovil Town saw Edwards answer his critics as he scored in a 2–2 draw. During the build-up to the 2008–09, Edwards suffered an ankle injury in pre-season that threatened to cut short his Port Vale career. However, after overcoming this he soon found himself back on the bench after a run of superb performances in the reserves. He came on during Vale's 2–1 home defeat to Notts County and was arguably the best player with his trickery and pace on the left of midfield. He found himself back in the first-team the following week and gave a man-of-the-match performance against Shrewsbury Town on 11 October 2008 at the New Meadow, which Vale won 2–1. Following the conclusion of the season he was offered a new contract, but after the appointment of new manager Micky Adams the offer was withdrawn.
Barrow
It had been suggested that he would link up again with John Sheridan, his manager at Oldham, now at Chesterfield. But this came to nothing and after a brief trial with his former club Wrexham in late 2009, he signed for Barrow in March 2010, and ironically made his debut against Wrexham later in the month. Two months he lifted his first trophy with the club after a 2–1 win over Stevenage Borough in the FA Trophy final. At the end of the season the club released left-back Gareth Jelleyman, with the intention that Edwards would fulfil this role the following season. However the club soon discovered that Edwards had also been offered a trial with Inverness Caledonian Thistle. Edwards failed to gain a contract in Scotland however, and returned to Barrow just after the start of the 2010–11 season. In May 2011 he was offered a new contract by Barrow, having made a 43-game haul in the 2010–11 campaign.
Fleetwood Town and return to Barrow
In June 2011 he signed with Barrow's Conference rivals Fleetwood Town. In January 2012 he joined Conference rivals Mansfield Town on a one-month loan, after manager Paul Cox had previously attempted to sign Edwards in the summer. He played three games for the "Stags", before returning to Highbury. In March 2012 he re-joined former club Barrow on loan until 28 April. He was released by Fleetwood in May 2012. After a year out of the game, he returned to Barrow again, this time in the Conference North. He played 25 games for the "Bluebirds" during the 2013–14 season, helping Darren Edmondson's side to an 11th-place finish.
Personal life
Edwards has a son, Devonte Redmond, who plays for Wrexham as a midfielder.