Both Data Type and Data List are helpful when your test logic requires you to work with various combinations of inputs for a given field. Since both Data Type and Data List serve same function, it is important to understand the differences and respective applicability.
Data Type is helpful when there is a need to define a classification structure for the input. As an example, Airport Code input in a flight booking application may have variations to cover various business scenarios with flight booking. Business rules are different for each class of data, so it becomes important to provide test coverage that covers all these nodes.
Data List is helpful when the inputs are only from a flat list of values. There is no hierarchy or structure involved. As an example Class of Service is a data list with Economy, First Class and Business as the values. Each input value is important, but there is no hierarchy here.
Additionally, in the case of Data Type, instance values are provided as examples against each leaf node. Your test logic only refers to the required leaf node and instance values are picked up dynamically when the test is executed.
Whereas, in the case of Data List, list items are the values that you directly use in the test logic.
As you learn the concepts of Actions and test case generation, this subtle difference becomes clear.