Linq to SQL is said to be dead (I don't think so though - it was way to well received by the development community). Entity Framework is its successor, if you want. It can access more data sources (more database types, and also different kinds of sources such as reporting services, business intelligence etc.). It's much more complex than Linq to SQL, and has a steeper learning curve, for example EF allows one class-multiple tables mapping. Other things are not possible with EF, such as specifying deferred loading - that's Linq to SQL only.