Also, with arrayToDataTable, you have to replicate the entire DataTable - you can't add new data to an existing DataTable that way.
If you are creating a DataTable from scratch, performance-wise, the fastest method is actually to pass a JSON representation of the DataTable to the DataTable constructor (see
here). Manually defining columns and then using the #addRows method is probably marginally faster than arrayToDataTable, as the API doesn't have to determine the column data types.