There is a nice feature in ADO.NET that allows you to send multiple SQL statements to database in one roundtrip and receive results for all statements:
var grid = connection.QueryMultiple("
SELECT COUNT(*) FROM TABLEA
SELECT COUNT(*) FROM TABLEB
SELECT COUNT(*) FROM TABLEC");
var lstResult = new List();
var isNext = false;
do{
var first2 = info.Read().Single();
lstResult.Add(first2);
isNext=info.IsConsumed;
}
while (!isNext);