Q&A: Deciding between LINQ to SQL and LINQ to Entities

I keep getting asked this one. I have my own way of answering which ultimately ends up with “LINQ to Entities is the right choice for majority of scenarios, just expect a little pain”. In slightly more detail:

  • If you only care about SQL Server AND you have complete control of the “shape” of the db schema AND the application will live at most a few years, then LINQ to SQL is a good choice. LINQ to Entities would also work.
  • If you have virtually no control of the “shape” of the db schema OR you are working against a RDBMS other than SQL Server OR you are building an application that will live many years, then LINQ to Entities is the best choice

However I thought it was time I had a look for an “official” answer. In Jan 2008 Elisa published a document on “LINQ to Relational” covering both technologies which contained the following two tables.



LINQ to Entities


Comments (2)

  1. In 2001 we first demonstrated Object Relational Mapping (ORM) technology for .NET – ObjectSpaces . However