Both are basically need to hold the records or table available in database. recordset is live connection data holder whereas dataset is connectionless data holder. Recordset is having only one table at a time and can process one table at a time whereas dataset can contains multiple tables
Dataset is a connectionless data holder whereas RecordSet is connection oriented Data holder.Though DataSet you can refer more than 1 table at a time, but in the case of Recordset only 1 table is processed at a time. Through Dataset you can process more than 1 record,but in case of recordset recordset you have to make travesel to each record and after that you can make processing.
Recordset is simple representation and doesn't contain any relationships, Constraints, key and etc DataSet - Contains more information and contain more than one table at a time, This is more functional than Recordset.