O LINQ deve ser evitado porque é lento? [fechadas]

Disseram-me que, uma vez que o .net linq é tão lento que não devemos usá-lo, fiquei imaginando que alguém chegou à mesma conclusão, e o exemplo é:

Levou 1443ms para fazer 1000000000 compara não-LINQ.
Foram necessários 4944ms para fazer 1000000000 em comparação com o LINQ.
(243% mais lento)

o código não-LINQ:

for (int i = 0; i < 10000; i++)
{
    foreach (MyLinqTestClass1 item in lst1) //100000 items in the list
    {
        if (item.Name == "9999")
        {
            isInGroup = true;
            break;
        }
    }
}

Levou 1443ms para fazer 1000000000 compara não-LINQ.

Código LINQ:

for (int i = 0; i < 10000; i++)  
    isInGroup = lst1.Cast<MyLinqTestClass1>().Any(item => item.Name == "9999");  

Foram necessários 4944ms para fazer 1000000000 em comparação com o LINQ.

Eu acho que é possível otimizar o código LINQ, mas o pensamento era que era fácil obter um código LINQ muito lento e, uma vez que não deveria ser usado. Dado que o LINQ é lento, também se segue que o PLINQ é lento e o NHibernate LINQ seria lento, portanto, qualquer tipo na instrução LINQ não deve ser usado.

Alguém mais descobriu que o LINQ é tão lento que eles desejavam nunca o ter usado, ou estou fazendo uma conclusão muito geral com base em parâmetros de referência como este?

questionAnswers(17)

yourAnswerToTheQuestion