It has amazing capabilities, I'd admit. However, in real life applications, most use stored procedures to access the data in MSSQL databases. That practice isolates the raw SQL statement from the binary code, and allow DBAs to change the business logic without modifying the codes. If everything is done using LinQ to SQL, every little change in the business logic requires recompilation of the binaries. That may cause a lot of trouble for some.
On the other hand it gives the programmers extremely powerful and easy to use tool to write their business logic objects. It's a welcoming sign.