Bury Worrall began his career at
Bury, where
manager Chris Casper handed Worrall his first-team debut when Worrall was just 16-years old; he came on as an 81st-minute
substitute for
Jake Speight in a 2–0 defeat to
Bristol Rovers at
Gigg Lane on 18 November 2006. In July 2007 he signed a three-year professional
contract, becoming a member of West Brom's first-team squad. He suffered a poor start to his professional career, being
sent off in a
2007–08 pre-season
friendly with
Hajduk Split; however, manager
Tony Mowbray said it was a "very harsh decision" and that 17-year-old Worrall "looks like he's got all the right things you need to make it to the top". He made his Albion debut after coming on as a 75th-minute substitute for
Filipe Teixeira in a 1–0
League Cup victory over
AFC Bournemouth at
The Hawthorns on 14 August. This was his only appearance of the
2007–08 season, as the "Baggies" went on to secure
promotion out of the
Championship into the
Premier League. On 22 August 2008, Worrall joined
John Coleman's League Two side
Accrington Stanley on a one-month
loan. He made his debut for Stanley the following day after coming on as a late substitute in a 2–0 win over
Macclesfield Town at the
Crown Ground. He played a total of five games for the club before he was forced to return to West Brom for a
hernia operation. On 24 February 2009, Worrall joined fellow West Brom teammate,
Luke Daniels, on an initial one-month loan at
Shrewsbury Town; manager
Paul Simpson said that "there is no guarantee that he will go straight into the side [but] he's an enthusiastic, fit footballer who has good technical ability and I just feel that we need a little burst of enthusiasm and some legs in there who will make a difference for us". After he made six League Two appearances for the "Shrews", the loan was extended to keep him at the
New Meadow until the end of the
2008–09 season. Shrewsbury qualified for the
play-offs after finishing in seventh-place, and Worrall helped them to overcome former club Bury in the semi-finals to face
Gillingham at
Wembley Stadium. He was dropped to the bench for
the final but came on as a 74th-minute substitute for
Paul Murray, before Shrewsbury conceded a goal in the final minute of the game to lose 1–0. He scored his first goal in the
English Football League in 2–0 win over
Lincoln City at Gigg Lane on 26 September. The loan deal was made permanent on a
free transfer after he signed a two-and-a-half-year contract with Bury on 8 January 2010. Manager
Alan Knill said that "I think that he will settle in well and hopefully use Bury as a stepping stone for his career. He is a good age (19) for us and I think that he can go on to better things". He went on to score five goals from 42 appearances as Bury posted a ninth-place finish in
2009–10, just three points outside the play-off places. He was named Bury's Young Player of the Year and said that though he enjoyed his new position on the wings, he hoped to return to central midfield later in his career after gaining more experience and match awareness. He scored two goals from 27 starts and 17 substitute appearances across the
2010–11 campaign as Bury secured promotion with a second-place finish. In October 2011, he signed a contract extension to keep him tied to Bury until June 2014. He remained a first-team regular in League One despite short spells of injury and illness. He scored three goals from 45 matches as Bury posted a 14th-place finish in the
2011–12 season. He was voted the club's Player of the Season, and dedicated the award to central midfielders
Steven Schumacher and
Peter Sweeney. The
2012–13 season proved to be a disaster, however, as manager
Richie Barker left days before the opening day. Worrall was then rushed to hospital after colliding with teammate Steven Schumacher in a 2–1 defeat at
Doncaster Rovers on 21 August. However, initial fears of a
broken ankle proved unfounded as a scan showed no serious damage had been done.
Kevin Blackwell was appointed as manager ahead of caretaker
Peter Shirtliff, though he was unable to prevent the club from being relegated; Blackwell appointed Worrall as stand-in
captain, and Worrall said that "I'm sorry for the gaffer and very disappointed in the people above him". Speaking in April 2013, Worrall criticised the club's board of directors, blaming them for the club's relegation and claiming that there had been no communication with the players in regards to the club's precarious financial position.
Rotherham United On 20 June 2013, Worrall joined newly promoted League One side
Rotherham United on a two-year deal with the option of a third year; the
transfer fee was undisclosed, but was reported to be a six-figure sum. Manager
Steve Evans stated that "he will be a key player for us". He scored his first and only goal for the "Millers" in a 2–1 victory at
Crawley Town on 17 August. However, he suffered a
groin injury not long afterwards and was sidelined after undergoing a hernia operation. On 3 January 2014, Worrall joined divisional rivals
Oldham Athletic on loan until the end of the
2013–14 season. Oldham manager
Lee Johnson stated that he would later "like to come to some kind of agreement" to sign the player permanently. Worrall scored his first for the "Latics" in his second appearance for the club on 25 January, scoring the second goal of a 5–4 comeback win over
Peterborough United at
Boundary Park with a finish into the top right-hand corner on the edge of the box. In April, he stated that he would love to stay at Oldham, saying "I would love to stay here, the staff, the gaffer and the lads know that and I think it would be a good move for me". He made 18 appearances for Oldham as the club posted a 15th-place finish, whilst parent club Rotherham secured promotion with a
penalty shoot-out victory over
Leyton Orient in the
play-off final.
Southend United On 23 July 2014, Worrall returned to League Two by signing a two-year contract with
Southend United after his contract at the
New York Stadium was cancelled by mutual consent. He was given the
League Two Player of the Month award for November after scoring three goals and providing two
assists to help the "Seasiders" to win all four of their league fixtures that month. On 21 April, he scored the only goal of the game from a free kick at former club Bury to keep Southend in contention for a finish in the automatic promotion places; he dedicated the goal to his baby son, Noah, who had recently died. Southend ended up finishing in fifth-place, though Worrall said the play-off games would help him to move on following his son's death. The "Shrimpers" secured promotion after beating
Wycombe Wanderers on penalties in the
play-off final; Worrall started the game but was substituted in
extra time. In total he scored six goals from 44 appearances during the
2014–15 campaign. He was offered a new contract by the "Blues", but was even more strongly linked with Bury following Southend's 3–2 defeat at Gigg Lane on the final day of the season, and manager
Phil Brown said he "thought David Worrall showed where he really wants to be [when] their fans virtually chair-lifted him off the
pitch at the end of the game". He scored three goals from 40 appearances across the
2015–16 campaign, helping Southend to a 14th-place finish, before he left
Roots Hall in the summer. He scored his first goal for the "Lions" in a 2–2 draw at
Milton Keynes Dons on 13 August. He scored two goals from 41 appearances across the
2016–17 season, though he was mainly a substitute as he started only 17 matches. However, he found himself behind
Jed Wallace and
Fred Onyedinma in the pecking order at
The Den, and his contract was cancelled by mutual consent on 22 August 2017.
Port Vale On 24 August 2017, Worrall signed a two-year contract with newly relegated League Two side
Port Vale. Manager
Michael Brown said that "his experience speaks for itself... and hopefully he can use his experience and be another leader and that's certainly what we need at this football club". Brown was sacked after a poor start to the
2017–18 season, though Worrall maintained his first-team place as one of the side's most creative players under new "Valiants" manager
Neil Aspin. On 16 December, he provided assists for two goals at
Carlisle United to help secure a 2–1 win and was named on the EFL Team of the Week. On 27 January, he scored both Vale's goals as they twice came from behind to claim a 2–2 draw with
Colchester United at
Vale Park and was again named on the EFL Team of the Week. However, Worrall stated that it was "a nowhere-near-good-enough season" and "as a team and a squad we were nowhere near it". He also struggled for form at the start of the
2018–19 season – not helped by a change in
formation and his sustaining
whiplash in a car accident – and, speaking in November, Aspin said that Worrall needed to work harder to regain his first-team place. He was sometimes made to train with the
youth team. However, it was only after
John Askey replaced Aspin as manager in January that Worrall began to find his form again. He agreed a new contract in May 2019, ahead of offers from other clubs. He started the
2019–20 season playing in central midfield in a 4–3–3 formation as
Manny Oyeleke picked up an injury, and himself played with a face mask on after having his
nose broken in a 1–1 draw with
Salford City. On 23 November, he was sent off after the final whistle in a 2–1 defeat at
Scunthorpe United for a confrontation with
Matty Lund. Askey returned him to the starting eleven after his suspension was served and Worrall told the media that "I love it here... this club seems to be perfect. I feel the way the manager wants me to play suits me down to a tee". He made his 100th appearance for the club in a 4–1 loss at
Manchester City in the
FA Cup third round on 4 January. He signed a new two-and-a-half-year contract the following month. He also began coaching in the club's academy. After a public vote held in February 2020, he was named by
The Sentinel as Port Vale's best winger of the 2010s with 44% of the vote, ahead of
Jennison Myrie-Williams (32%). He had the second-highest key
passes – defined as the final pass leading to a
shot at goal from a teammate – average in English football at the point the 2019–20 League Two season was ended. He won Port Vale's
Player of the Year award, as well as the Supporter's Club award, the Away Travel Player of the Year award, and a joint Player's Player of the Year award (with
Luke Joyce). Worrall was one of League Two's leading assist makers in the
2020–21 campaign, ending with ten assists from 37 league games, behind only Carlisle United's
Callum Guy on 14. He was named on the League Two Team of the Week for his performance during the 6–3 win at
Bolton Wanderers on 5 December. He was named as Official Away Travel Player of the Year at the club's end of season awards. He was named on the League Two Team of the Season at the EFL's end-of-season awards. He was also named on the League Two Team of the Season at the
EFL Awards. He began the
2021–22 season playing at right-wing-back, in what was a controversial decision by new manager
Darrell Clarke that paid dividends after Worrall adjusted well to his new role as he stated that "I am still getting in good positions, getting
crosses in and being dangerous". Despite struggling with a hip injury, he managed to make 50 appearances in the season, with
James Gibbons ruled out for long periods with injury and unable to allow Worrall to be rested. Worrall started in the
play-off final at Wembley Stadium, claiming an assist for
Mal Benning as Vale secured promotion with a 3–0 victory over
Mansfield Town; Michael Baggaley of
The Sentinel wrote that "[Worrall was a] constant threat from right wing back ran himself into the ground but also delivered plenty of quality". Worrall said it was the best of his promotions. Worrall made the 500th league appearance (including play-off games) of his career on 15 October 2022, and after the game spoke of his love for the club and said that "since the gaffer [Clarke] has come in, I have changed as a person, my lifestyle – I take football a lot more seriously". He provided what the club website described as "one of the passes of the season" for
Danny Butterworth to score in a 1–0 win over
Charlton Athletic on 19 November. However, he picked up an injury the following month which saw him sidelined for three weeks. He score his first league goal of the season on 7 February, in a 1–1 draw with
Accrington Stanley. He underwent "lengthy conversations" with the club over a new contract, before his departure was announced in May 2023;
David Flitcroft, the club's
director of football, stated that the club offered a one-year contract but Worrall had found the security of a two-year deal elsewhere.
Barrow On 18 May 2023, League Two side
Barrow announced that Worrall would join the club on a two-year deal on 1 July, becoming manager
Pete Wild's first signing of the summer. Winger
Sean Etaluku described him as a "good mentor" in February 2024. Worrall featured 34 times in the
2023–24 campaign. He scored one goal in seven games for the Nash. He picked up five assists in six starts as his loan spell was extended until the end of the
2024–25 season. He played 14 games, including the play-off semi-final defeat to
Chester. He signed a new one-year deal as a player/coach in June. Manager
Andy Whing said he was "vital for the dressing room". He retired as a player on 22 January 2026, staying on at Barrow as a full-time coach. ==Style of play==