These days you should use one kind of ORM or another to access data.
If you want a Microsoft product, you should use the Entity Framework over Linq2SQL (since the latter is no longer actively developing and is in maintenance mode).
nHibernate, ORM , Linq2SQL ORM .NET.