Não sei se será abordado mais a frente, mas o método Equals() tem um parâmetro que recebe um enum StringComparison.OrdinalIgnoreCase no qual é mais performático do que alterar toda a cadeia de caracteres para maiúsculo para que possa fazer o comparativo, então a alteração ficaria assim:
Antes:
var artista = dal.RecuperarPor(a => a.Nome.ToUpper().Equals(nome.ToUpper()));
Depois:
var artista = dal.RecuperarPor(a => a.Nome.Equals(nome, StringComparison.OrdinalIgnoreCase));
Fonte:
**Artigo: ** Postagem original da imagem: https://www.linkedin.com/posts/davidcallan_dotnet-csharp-activity-7091658793565966336-Ybfd/
**Documentação: ** Boas práticas para comparação de Strings no .Net: https://learn.microsoft.com/en-us/dotnet/standard/base-types/best-practices-strings