Question: I just started using Linq to SQL, and it just occurred to me that I don't really need any sprocs in the database since i can do all the data access through Linq to SQL. 

Is there any reason to write sprocs with Linq to SQL?

Thank you.

Answer: 
Much less, IMO, but there are still occasions where using stored procedures or table-valued functions can useful. Of course, LinqToSQL doesn't preclude using stored procedures so you can still use them if desired. For example, I've used table-valued functions to do parameterized queries against table joins to support multi-variable filters. This can greatly simplify your code and gives you the ability to optimize the query.
Possibly interfacing with an existing Database that mandates all data retrieval be done through a set of controlled Stored Procedures.

Or perhaps there is a construct which is hard (impossible?) to implement in Linq2SQL.

[Retrieving Data Using Stored Procedures](http://weblogs.asp.net/scottgu/archive/2007/08/16/linq-to-sql-part-6-retrieving-data-using-stored-procedures.aspx)