Oui, tu peux tout à fait avoir plusieurs DataTables dans un même DataSet. En effet, le DataSet possède une collection de DataTable (DataSet.Tables).
Après pour ce qui est des DataAdapter, tu peux en utiliser un seul ou plusieurs, c'est comme tu veux, mais le choix de plusieurs DataAdapter est plus judicieux, cela t'évite de changer les InsertCommand, SelectCommand .... à chaque changement de table.