You can use data reader with SqlBulkCopy:
const string sourceConnectionString = "abc";
const string targetConnectionString = "xyz";
using (var sourceConnection = new OleDbConnection(sourceConnectionString))
using (var targetConnection = new SqlConnection(targetConnectionString))
using (var sourceCommand = new OleDbCommand("select * from dbftable", sourceConnection))
{
sourceConnection.Open();
targetConnection.Open();
using (var reader = sourceCommand.ExecuteReader())
using (var bulkCopy = new SqlBulkCopy(targetConnection))
{
bulkCopy.DestinationTableName = "aTableName";
bulkCopy.BatchSize = 1000;
bulkCopy.WriteToServer(reader);
}
}