14 października 1996 McKinlay podpisał kontrakt z angielskim Blackburn Rovers, które zapłaciło za niego 1,75 miliona funtów. W Rovers zaczął występować wraz z dwoma rodakami, Colinem Hendrym i Kevinem Gallacherem. W Premiership zadebiutował 21 października w zremisowanym 1:1 spotkaniu z West Ham United. Przez pierwsze trzy sezony grywał w pierwszym składzie Blackburn, ale już w sezonie 1998/1999 był rezerwowym, a klub spadł do Division One, a w sezonie 1999/2000 nie wystąpił w żadnym ligowym spotkaniu.

24 listopada 2000 McKinlay przeszedł na zasadzie wolnego transferu do Bradford City. 25 listopada rozegrał swój pierwszy mecz dla tego klubu. Bradford zremisowało w nim 2:2 z Middlesbrough F.C. Rozegrał 11 meczów dla swojego zespołu w Premiership, ale spadł on na koniec sezonu z ligi. W 2001 roku Billy został piłkarzem Preston North End, ale nie rozegrał żadnego spotkania i w trakcie sezonu wrócił do Szkocji, do grającego w Scottish Division One, Clydebank F.C.

9 sierpnia 2002 McKinlay został piłkarzem Leicester City, a 10 sierpnia zadebiutował w spotkaniu z Watfordem (2:0). Wspomógł zespół w awansie do Premiership, a na boiskach angielskiej ekstraklasy grał przez rok.