LINQ is one of the greatest feature in C#3.0, LINQ to SQL is an O/RM (object relational mapping) implementation that included, we can do CRUD on the database using LINQ. LINQ to SQL also supports transactions, views, and stored procedures.
Now seemed the only issue for me is if LINQ for SQL performance is good enough.
There are already some talks on LINQ to SQL performance:
Database Performance, Correctness, Compostion, Compromise, and Linq too (http://blogs.msdn.com/ricom/archive/2007/08/31/database-performance-correctness-compostion-compromise-and-linq-too.aspx)
LINQ to SQL Compiled Queries(http://devauthority.com/blogs/jwooley/archive/2007/09/05/75645.aspx)
Compiled Queries in LINQ to SQL - performance considerations and entity caching (http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1438097&SiteID=1)
Improving Performance With LINQ(http://www.singingeels.com/Articles/Improving_Performance_With_LINQ.aspx)
LINQ To SQL and Visual Studio 2008 Performance Update(http://www.davidhayden.com/blog/dave/archive/2007/09/28/LINQToSQLVisualStudio2008PerformanceUpdate.aspx)