Вильям Кастро начинал карьеру футболиста в уругвайском клубе «Белья Виста». В 1985 году он провёл за аргентинскую «Химнасию» ряд матчей, после чего вернулся в «Белья Висту». В 1988 году Кастро перешёл в уругвайский «Насьональ», за который сыграл в обоих матчах финала Кубка Либертадорес 1988 против аргентинской команды «Ньюэллс Олд Бойз»[3][4]. Спустя полтора месяца «Насьональ» играл в Межконтинентальном кубке против нидерландского ПСВ. Кастро в этом матче реализовал свой удар в серии послематчевых пенальти[5].
Затем уругваец перебрался в Мексику, где выступал за «Крус Асуль». В 1992 году он стал игроком «Пеньяроля», непримиримого соперника «Насьоналя».