If you haven’t seen differences with DataSet, DataAdapter, and DataReader you might want to read this article specially if you are using C# or VB.NET as a programming language in ASP.NET. DataReader does not just read data from the database, it has other functions too. This goes same with DataAdapter which acts as a bridge between datasets and database, and the DataSet which checks if there is a need for active connections during the work with datasets and is a collection of DataTables and holds relations between tables.
The article also explains the difference in coding schemes when used with C# and VB.NET.
Read the entire article here: http://www.aspdotnet-suresh.com/2012/10/aspnet-difference-between-datareader.html