Wilson stroomde in 2009 door vanuit de jeugd van Coventry City. Hier debuteerde hij op 12 augustus 2009 in het eerste elftal, tijdens een wedstrijd in het toernooi om de League Cup tegen Hartlepool United. Hij maakte in vijf jaar 23 doelpunten in 55 competitieduels voor de club. Die speelde bij zijn debuut in de Championship, maar tijdens zijn laatste twee jaar in de League One. Gedurende zijn tijd bij Coventry verhuurde de club Wilson vier maanden aan Kettering Town en één aan Tamworth, om daar wedstrijden mee te spelen in de Conference National.
Wilson tekende op 4 juli 2014 een vierjarig contract bij AFC Bournemouth, dat op dat moment actief was in de Championship. Hij scoorde bij zijn debuut op de openingsspeeldag van het seizoen 2014/15 twee doelpunten, uit tegen Huddersfield Town.[2] Wilson werd dat jaar kampioen met Bournemouth en zelf met twintig competitiedoelpunten clubtopscorer. Hij was op 8 augustus 2015 een van de elf basisspeler van de club toen die voor het eerst in de clubgeschiedenis een wedstrijd in de Premier League speelde. Wilson maakte op 22 augustus 2015 vervolgens deel uit van de eerste overwinning van Bournemouth in deze competitie. Hij won die dag met zijn ploeggenoten met 3-4 uit bij West Ham United. Daarbij maakte hij in de elfde minuut Bournemouths eerste doelpunt in de Premier League ooit én volmaakte hij in de 79ste minuut Bournemouths eerste hattrick in de Premier League ooit. Zijn laatste goal was tevens de winnende. Wilson maakte in zijn eerste zeven wedstrijden in de Premier League vijf doelpunten. Op 26 september 2015 ging hij uit bij Stoke City na zeventien minuten geblesseerd van het veld. Er bleek een voorste kruisband in zijn rechterknie gescheurd, waardoor hij minimaal zes maanden uit de roulatie zou zijn.[3]
Wilson tekende op 7 september 2020 een contract bij Newcastle United FC.[4] Hij maakte zijn debuut op 12 september tegen West Ham en scoorde daarbij zijn eerste goal voor Newcastle.