Benson began his career with Athlone Town, making his debut against Waterford United in the Regional Sports Centre on 3 October 2008. He spent the following two seasons playing in the First Division with the club. After achieving 600 points in his Leaving Certificate examinations, Benson gained a scholarship with UCD in September 2010. This allowed him to combine his academic studies with football, and he majored in chemistry and maths before earning a master's degree in actuarial science.
UCD
Benson was unable to play for UCD's league side during the closing stages of the 2010 season due to scholarship regulations, however he joined up with the senior squad for the 2011 season, making 20 league appearances in the Premier Division and scoring five goals. Benson became a mainstay of the side during the 2012 season, playing a part in 31 league games for the club and scoring three goals in the process, as UCD finished ninth and avoided relegation. Benson remained with UCD for the 2013 season, and scored a career-high nine league goals in 25 appearances during the campaign, as UCD once more finished ninth. In 2014, Benson was made the captain of the team and played in all 35 league games for the club, scoring three goals. However, UCD were relegated at the end of the season after losing a play-off to Galway United. Despite this, Benson chose to stay with UCD in 2015 as he wished to complete his studies before later making the move to full-time football. He made his European debut in July 2015, captaining his side to a 1–0 win over Dudelange in the Europa League first qualifying round. He went on to make a further 3 appearances in the Europa League as UCD eliminated Dudelange and met Slovan Bratislava in the following round. Throughout the 2015 campaign, Benson played in eighteen league games and scored seven goals as UCD ultimately lost out on promotion to the Premier Division in a play-off against Finn Harps.
Dundalk
Despite interest from St. Patrick's Athletic, Shamrock Rovers and Cork City, Benson signed for Dundalk in December 2015, citing the opportunity to work under boss Stephen Kenny as being one of the deciding factors. He scored the third goal in the 3–0 home defeat of BATE Borisov to help Dundalk become the first Irish side to reach the play-off round of the Champions League, and followed this up with a volleyed goal against Legia Warsaw in the play-off round that received widespread exposure in international media and on social media. Benson considers this to be the greatest goal of his career to date. He was rewarded for his Champions League displays by being named Soccer Writers' Association of Ireland Player of the Month for August 2016. After considering offers from Scotland and England, Benson signed a new one-year contract with Dundalk in November 2017.
Benson signed for St Patrick's Athletic on 13 November 2019, signing for his former teammate Stephen O'Donnell, who was less than 3 months into his first managerial role. Benson scored on his first start for the club in a 6–0 win over Fermoy in a friendly.
International career
Benson was a key member of the Irish Schools side which won the Centenary Shield in 2010 including scoring the winner against England which sealed the trophy for Ireland. He was named the FAI's Under 18International SchoolsPlayer of the Year in 2009–10. He has also represented Ireland at under-16 and under-17 levels.