In de zomer van 2007 contracteerde Championship-club Cardiff City de Nederlandse spits, nadat hij eerder dicht bij een transfer naar Leicester City was. In de tweede Engelse competitie speelde Hasselbaink 36 wedstrijden, en maakte daarin zeven doelpunten. Met Cardiff City stond hij op 17 mei 2008 in de finale van de strijd om de FA Cup. Daarin verloor de ploeg van trainer-coach Dave Jones met 1-0 van Portsmouth door een goal in de 37ste minuut van de Nigeriaanse aanvaller Nwankwo Kanu. Middels een clausule zou zijn contract automatisch verlengd worden indien hij meer dan 23 wedstrijden speelde, met 44 optredens voldeed hij aan deze eis. Cardiff City wilde echter niet verder met de aanvaller, en claimde dat Hasselbaink in een mondelinge overeenkomst had afgezien van de clausule. Hasselbaink gaf aan indien nodig gerechtelijke stappen te zullen ondernemen tegen Cardiff. Op 15 september 2008 maakte hij bekend een punt achter zijn loopbaan te zetten.