Walters werd op veertienjarige leeftijd opgenomen in de jeugdopleiding van Blackburn Rovers, dat hem scoutte bij Shaftesbury. Bij Blackburn speelde hij geen enkele minuut op het hoogste niveau. Drie jaar na zijn komst, vertrok Walters naar Bolton Wanderers. Daar speelde hij vier wedstrijden in drie jaar. Intussen werd hij ook uitgeleend aan Hull City, Crewe Alexandra en Barnsley. In juli 2005 trok hij opnieuw naar Hull City maar ditmaal niet op leenbasis maar definitief. Een jaar later tekende hij voor Wrexham. In juli 2006 trok hij opnieuw transfervrij weg bij zijn club na één jaar. Hij ruilde Wrexham in voor Chester City. In januari 2007 bood Ipswich Town een bedrag van €325.000 op Walters, na een FA Cup-wedstrijd tussen de twee clubs. In drie seizoenen scoorde Walters 30 doelpunten in 136 competitiewedstrijden voor Ipswich Town.
Stoke City
Op 18 augustus 2010 tekende Walters een vierjarig contract bij Stoke City, dat een bedrag van €3,3 miljoen euro op tafel legde voor de toen 26-jarige aanvaller. Drie dagen later maakte hij zijn competitiedebuut tegen Tottenham Hotspur. Opnieuw drie dagen later scoorde hij zijn eerste doelpunt voor Stoke City in de League Cup tegen Shrewsbury Town. In zijn eerste seizoen bij Stoke City scoorde hij zes keer in 36 competitiewedstrijden. Het daaropvolgende seizoen maakte hij zeven doelpunten uit 38 wedstrijden. In totaal speelde hij reeds meer dan 100 wedstrijden voor The Potters. Walters stond op 14 mei2011 met Stoke City in de finale van de strijd om de FA Cup. Daarin verloor de ploeg van trainer-coach Tony Pulis met 1-0 van Manchester City door een treffer in de 74ste minuut van Yaya Touré.
Walters werd geboren in het Engelse Birkenhead, in het EngelsegraafschapMerseyside. Zijn moeder is Ierse, waardoor hij zowel voor Engeland als voor Ierland had mogen uitkomen. Op 10 oktober 2003 speelde hij met Ierland –21 een oefenwedstrijd tegen Zwitserland –21. Ierland won met 1–2 dankzij twee doelpunten van Walters. In november 2010 riep de toenmalige Ierse bondscoach Giovanni Trapattoni hem op voor een oefenwedstrijd tegen Noorwegen. Hij viel in tijdens de rust. Op 11 november 2011 maakte hij zijn eerste doelpunt voor Ierland in de play-offwedstrijd tegen Estland, waardoor Ierland zich uiteindelijk kon kwalificeren voor het EK 2012. Op 16 oktober 2012 maakte hij zijn tweede interlanddoelpunt in een WK-kwalificatiewedstrijd tegen de Faeröer.
Tijdens de play-offs voor kwalificatie voor het EK van 2016 in Frankrijk was Walters belangrijk in het tweeluik tegen Bosnië en Herzegovina. Hij wist in de return tweemaal te scoren. De wedstrijd eindigde in 2–0, wat genoeg was na de 1–1 in de heenwedstrijd. In mei 2016 werd Walters opgenomen in de selectie voor het Europees kampioenschap voetbal 2016.[2] Ierland werd in de achtste finale uitgeschakeld door gastland Frankrijk na twee doelpunten van Antoine Griezmann.