Question: Is there any difference between these two ways of querying the context?

```
Firm firm = base.context.Firms
            .Where(f => f.SomeId == someId)
            .Where(f => f.AnotherId == anotherId)
            .FirstOrDefault();

Firm firm = base.context.Firms
            .Where(f => f.SomeId == someId && f.AnotherId == anotherId)
            .FirstOrDefault();

```

It seems that chaining is perfectly fine to accomplish the AND condition. I don't believe you can chain OR statements. Is there a reason to prefer one over another, or scenarios when one is better/more efficient?

Answer: 
My guess is that as long as you are working with in `IQueryable` (as your context collections probably are), using the chained extensions vs the full predicate clause achieves the same thing. This is because `IQueryable` allows for deferred execution so essentially the same SQL is being generated behind the scenes.
You can debug through the code and see the SQL that gets generated as a result of each. I would imagine it turns into the same query.