Joel Dinis Castro Pereira (Boudevilliers, 28 juni 1996) is een in Zwitserland geboren Portugees voetballer die als doelman speelt. Hij stroomde in 2015 door vanuit de jeugd van Manchester United.
Manchester United haalde Castro in 2012 weg bij Neuchâtel Xamax. In oktober 2015 werd hij verhuurd aan Rochdale AFC, waarvoor hij acht wedstrijden speelde. In augustus 2016 werd de Portugees verhuurd aan CF Os Belenenses. In januari 2017 keerde hij terug bij Manchester United. Op 29 januari 2017 debuteerde hij in de FA Cup tegen Wigan Athletic. Castro viel bij een 4–0 voorsprong na 80 minuten in voor Sergio Romero. Zijn eerste basisplaats in het eerste elftal van Manchester United volgde op 21 mei 2017, toen hij op de slotspeeldag van de Premier League in doel mocht postvatten tegen Crystal Palace. Manchester United won deze wedstrijd met 2-0.
Op 2 augustus 2018 werd Castro verhuurd aan de Portugese eersteklasser Vitória FC. Tijdens de tweede helft van het seizoen 2018/19 volgde een uitleenbeurt aan de Belgische eersteklasser KV Kortrijk, waar hij het vertrek van Thomas Kaminski naar AA Gent mee moest opvangen.