I was checking 2nd edition of Professional ASP.NET MVC and realized EF replaced LINQ to SQL. I am familiar to LINQ to SQL from the first book but I know nothing about EF. An
LINQ to SQL gives permission you to query and modify SQL Server database by using LINQ syntax. Entity framework is a great ORM shipped by Microsoft which gives permission you to query and modify RDBMS like SQL Server, Oracle, DB2 and MySQL etc. by using LINQ syntax. Today, EF is widely used by each and every .NET application to query to database.
In other words LINQ is used to connect C# code to in-memory objects of many different kinds. Entity Framework is an object-relational mapping (ORM) framework for connecting C# code to external databases, usually SQL Server. LINQ is a query language embedded into C# and a set of extension methods in order to make it useful.