Great question. Lookups are typically for ad hoc analysis and will return one answer per row; joins are for more productionalized data sets and can return multiple results per row. Be sure to check out our lookups vs. joins blog that covers this exact question.