Basically database development with the .NET framework has not changed a lot since its first release. But many of us usually start by designing our database tables and their relationships and then creating classes in our application to make them as closely as possible in a set of Business Classes , and then working with them in out ADO.NET code. However, this process has always been an approximation and has involved a lot of groundwork.
This is where the ADO.NET Entity Framework comes in; it allows you to deal with the (true) entities represented in the database in your application code by abstracting the groundwork and maintenance code work away from you.
A very crude description of the ADO.NET Entity Framework would be “It allows you to deal with database concepts in your code.”
There is a very good post available which has some good example projects.