It depends on the details and needs of your program. If you plan on iterating through the results, a List will be better. You can iterate through the values of a Map but they won't necessarily be in the same order in which you put them in the Map. If you want to be able to access the values using a key/value pattern where key is not just an integer, then obviously a Map will be better.
You can also create a custom Type whose fields contain all your info and return an instance of that Type.