Skinner has worked in film, television, and theatre, since 2007. His first professional theatre role was in the English Touring Theatre's 2007 production of French Without Tears. In addition to performing in many different theatres in London and across the United Kingdom, he played supporting roles in two BBC series: Felix, the brother of Angel Clare, in the 2008 adaptation of Tess of the d'Urbervilles, and Lionel, the estranged son of the main character Logan Mountstuart, in the 2010 miniseries Any Human Heart. He also played the role of Joly, one of the student revolutionaries, in the 2012 film of Les Misérables. In the autumn of 2013 it was announced that Skinner would play the role of Luis Carruthers, a closeted gay man who is in love with the show's protagonist, Patrick Bateman, in the world premiere of American Psycho at the Almeida Theatre. He also appeared on the London cast album, which was released in 2016. While performing in American Psycho he began filming the first series of the comedy W1A, playing the role of Will Humphries, an inept yet endearing intern at the BBC. The first series was released in 2014, with subsequent series airing on BBC2 in 2015 and 2017. Skinner continued to work in both television and on stage in 2014. He played the role of Dr Barnaby Ford in the BBC series Our Zoo. He also appeared at the Theatre Royal, Bath as Camille in Helen Edmundson's adaptation of Thérèse Raquin and as Yephidikhov in Simon Stephens' new translation of The Cherry Orchard at the Young Vic. He returned to the Young Vic in the summer of 2015 to play dual roles in Nick Gill's adaptation of The Trial. In the autumn of 2015 it was announced that he had been cast as Unwin Trevaunance, an aspiring Member of Parliament, in the second series of the BBC production of Poldark, which aired in 2016. Skinner was also featured in two different comedy series that premiered in 2016: The Windsors, a spoof of the royal family that aired on Channel 4, where he played Prince William, and Fleabag, a BBC3 and Amazon production, where he played the protagonist's hapless boyfriend Harry. In 2017 he played Sir George Howard in the first series of Harlots, an 18th century costume drama that premiered on ITV Encore and Hulu in March. That year he also played a supporting role in Hampstead opposite Diane Keaton and Brendan Gleeson, and appeared in . Skinner co-starred in Mamma Mia! Here We Go Again, the 2018 sequel to the 2008 film Mamma Mia!, in which he played Young Harry, a version of the character originated by Colin Firth in the first film. In 2018 he also starred in the eighth and final episode of Matthew Weiner's anthology seriesThe Romanoffs, playing the role of Simon Burrows. He reprised his role as Harry in series 2 of Fleabag, which was released on BBC3 in March 2019 and will be available on Amazon Prime in May 2019. On 5 April 2019, it was announced that Skinner had joined the cast of the period drama Little Birds, which will premiere on Sky Atlantic in 2020. In December 2019, it was announced that he would be co-starring in the film Falling for Figaro with Danielle Macdonald and Joanna Lumley.