I'm trying to learn about linq queries. I have a list \_taskDetail which contains 8 elements. I do not understand why the first query below returns the answer 8? Yes the list contains 8 elements but all the td.Names are different and I have specified td.Name == taskName so why is it returning everything even elements where the td.Name does not equal taskName?

The second query gives me the expected and correct answer of 1.

```
  var Ans1 = _taskDetail.Select(td => td.Name == taskName).Count();

  var Ans2 = (from tdList in _taskDetail
                   where tdList.Name == taskName
                   select tdList).Count();

  Ans1 = 8
  Ans2 = 1

```