One thing that I will add is that you should ALWAYS inspect the SQL code generated by EF as it will not always be what you expect. Many times you can improve the SQL by changing your LINQ to Entities code a bit. There are times that you simply can't get EF to generate as efficient SQL as you could write yourself but there's always a trade-off. Usually it's not enough to really matter.