Der erste Profiklub des Mittelfeldspielers war Aston Villa; er unterschrieb dort im Jahre 2004 einen Profivertrag. Sein Premier-League-Debüt gab Osbourne am 21. Oktober 2006 im Spiel gegen den FC Fulham im Villa Park, als er in der 83. Minute gegen Steven Davis ausgetauscht wurde. Am 28. Dezember verlängerte er den Vertrag für 3,5 Jahre.[1] Im September 2008 verlängerte er den Vertrag bei Villa erneut bis 2011. Im März 2010 wurde er bis zum Saisonende an Nottingham Forest ausgeliehen, für die er in acht Ligaspielen zum Einsatz kam. Er unterschrieb am 5. November 2009 einen Leihvertrag beim FC Middlesbrough und gab sein Debüt bei der 0:1-Niederlage im Spiel gegen Crystal Palace.
Middlesbrough wollte das Leihgeschäft fortsetzen, jedoch musste Osbourne wegen der Verletzungsmisere bei Aston Villa wieder zurückkehren. In der Saison 2009/10 absolvierte er kein einziges Spiel und bekam er nur einen Einsatz in der UEFA Europa League. Am 30. Januar 2011 wurde er an Sheffield Wednesday ausgeliehen. Nach dem Trainerwechsel wurde Gary Megson neuer Trainer; dieser plante nicht mehr mit ihm.[2] Im Mai 2011 lief der Vertrag aus und wurde nicht mehr verlängert.[3][4] Seine weiteren Stationen waren Hibernian Edinburgh, FC Blackpool und von 2014 bis 2015 Scunthorpe United. Seit 2015 spielt er für den FC Walsall.
International spielte Osbourne 2002 für die englische U-16-Auswahl.