CommandType.Text vs CommandType.StoredProcedure

Existe algum benefício em usar explicitamente o StoredProcedure CommandType em vez de apenas usar um comando de texto? Em outras palavras, é

cmd = new SqlCommand("EXEC StoredProc(@p1, @p2)");
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add("@p1", 1);
cmd.Parameters.Add("@p2", 2);

muito pior que

cmd = new SqlCommand("StoredProc");
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@p1", 1);
cmd.Parameters.Add("@p2", 2);

EDIT: Corrigido trabalho de colar cópia incorreta (novamente). Além disso, o ponto principal da questão é para uma classe de acesso a dados. Eu preferiria passar o nome e os parâmetros armazenados do proc em uma linha, em vez de linhas extras para cada parâmetr

questionAnswers(2)

yourAnswerToTheQuestion