Like @MarkKromer-8019 mentioned, ADF is primarily designed for data pipelines in mind. While Logic Apps do seem similar (workflow/pipeline, connectors, triggers, etc.), its better suited for business workflows with lesser amounts of data being moved/processed.
Logic Apps also have significant data limits which don't make them the ideal choice when working with enormous amounts of data. But its specialty lies in the rich integrations that it provides with its large library of connectors from sending emails, notifications, etc. to integrating other workflows like approvals or even triggering an ADF run itself. ADF on the other hand is great for moving/processing substantial amounts of data.
This difference is also seen in how each service is charged for differently with Logic Apps focusing on the number of connector action/trigger executions and ADF focusing on the amount of data being work on for longer periods of time.
The choice on which to use would heavily depend on the scenario at hand and it could also be useful to consider a combined approach with ADF, Logic Apps and other services like Functions too.