Halsall kuului Budapestin EM-kilpailuissa 2006 Britannian kultajoukkueeseen 4 × 100 metrin sekauintiviestissä. Saman vuoden Helsingin lyhyen radan EM-kilpailuissa hän sai pronssia 4 × 50 metrin sekauintiviestissä. Vuonna 2008 hän oli voittamassa 4 × 100 metrin sekauintiviestiä Eindhovenin EM-kilpailuissa ja saavutti Manchesterin lyhyen radan MM-kilpailuissa hopeaa 100 metrin vapaauinnissa sekä pronssia 50 metrin vapaauinnissa ja 4 × 100 metrin vapaa- ja sekauintiviesteissä. Pekingin olympialaisissa hän oli kahdeksas 100 metrin vapaauinnissa.