<p>Is there an easy way to read an entire Access file (.mdb) into a DataSet in .NET (specifically C# or VB)?</p>

<p>Or at least to get a list of tables from an access file so that I can loop through it and add them one at a time into a DataSet?</p>

You should be able to access it using an
OleDbConnection
.
Heres
a tut on DB access using it for MS Access files.
In terms of getting the table names, back in my VB6 days I always used ADOX, not sure how they do this in .NET now.. Although I know there is a system table in the access file - wanna say "mso...". I google!
EDIT
Ah ha!
msysobjects
!! xD