Arthur was born in Enfield, London. started his career in the youth team of Queens Park Rangers (QPR), and was sent on work experience to Conference South side Hayes & Yeading United in December 2007. In July 2008 he signed his first professional contract for QPR. He was sent out on loan in 2008 to Conference Premier side Kettering Town, where he made four league appearances. He went out on loan again to another Conference outfit in Rushden & Diamonds on a one-month loan deal in March 2009. He made two appearances during his spell at Nene Park. In the summer of 2009, Arthur was released from QPR.
After a short spell playing in Turkey, he returned to the Conference South when he signed for Bishop's Stortford in September 2010. In December 2010, he signed for League Two club Rotherham United on a two-month deal after a successful trial with the club. He failed to make a first-team appearance for the club and was released when his contract expired. In September 2011, he signed for Conference South side Havant & Waterlooville. After making four appearances for the Hawks, he left in October to sign for League Two club Northampton Town on a deal until January 2012.
He made his professional debut for the Cobblers on 8 October 2011, in a 1–0 home defeat to Crawley Town, replacing Ashley Corker in the second half. His first start for the club came a week later in a 3–0 defeat to Port Vale at Vale Park. On Aidy Boothroyd's arrival as Northampton manager, Athur was released having made only seven appearances for the club.
Arthur returned to Havant & Waterlooville in December 2011 before signing a two–year contract in January 2012. During his second spell with the club he made a total of 56 league appearances, scoring two league goals.
On 28 May 2013, Arthur joined AFC Wimbledon on a one-year deal for an undisclosed fee. On 3 August 2013, Arthur made his AFC Wimbledon debut in a 1–1 draw against Torquay United, replacing George Francomb in the 68th minute. He scored his first goal for the Dons when he scored the winner in a 3–2 win over Scunthorpe United.
On 21 August 2014, Arthur joined Conference Premier side Woking on a one-month loan deal after struggling to make an impression in the Wimbledon side. Two days later, Arthur made his Woking debut in a 1–1 draw against Welling United, playing the full 90 minutes.
On 6 January 2015, after numerous loan extensions to his Woking contract, Arthur joined the Cards permanently after his contract was mutually terminated by AFC Wimbledon. Arthur went on to make 17 more appearances before signing on for the 2015/16 campaign.
On 8 June 2016, Arthur joined League Two club Crawley Town on a one-year deal. On 9 August 2016, Arthur made his Crawley Town debut in a 2–1 defeat against Wolverhampton Wanderers in an EFL Cup tie. On 3 September 2016, Arthur made his league debut for Crawley Town in a 3–0 away defeat against Portsmouth, replacing Andre Blackman in the 52nd minute.
On 31 January 2017, Arthur returned to his former side Woking of the National League on loan on a one-month deal. On the same day, Arthur made his Woking return in a 3–0 home defeat against Tranmere Rovers, replacing Macauley Bonne in the 76th minute. On 3 March 2017, Arthur's loan at Woking was extended for a further month.
On 4 August 2017 Arthur signed a deal with National League side Aldershot Town upon expiration of his contract with Crawley Town.As of match played 2 September 2017