J'allais bêtement répondre: Croire en pour un mot abstrait qui suit, et Croire à pour un mot concret.
Mais en général c'est toujours abstrait, sinon aucune raison de croire ou pas.
Je crois que j'utilise plus souvent "croire en"
Croire en Dieu; Croire en la possibilité de quelque chose;
"il faut y croire", c'est vrai que "y" peut aussi bien remplacer un "en" qu'un "à".
J'ai tout de même le sentiment que l'expression "croire en" est plus correcte.
Mais je sais qu'il y a ici d'éminents linguistes qui sauront expliquer le pourquoi du comment...
En y refléchissant, et désolée, mais la circonstance où j'ai le plus souvent vu écrit le verbe croire, c'est en religion, il me semble me souvenir du Credo latin traduit en français qui dit "je crois en toi" et "je crois à la résurrection" "Je crois en un Dieu unique" ... Peut-être que quand il s'agit d'une personne on dit "en" (Je crois en toi, tu vas y arriver!) et quand il s'agit de quelque chose, ce serait "à" ?
Même si on peut remplacer le "à" par "en", l'inverse n'est pas possible. On ne dira pas "Je crois à toi".
en résumé, c'est une bonne question!
Marina