Azure Data Factory (ADF) is Azure's managed data integration / orchestration service. You build pipelines visually or via JSON/ARM, with activities for copy, Databricks, Synapse, stored procedures, and more.
Apache Airflow is an open-source workflow orchestrator where pipelines are Python DAGs. On Azure you might run Airflow yourself, on AKS, or via managed options; many teams still compare ADF to Airflow conceptually.
ADF: UI / JSON pipelines --> managed cloud activities Airflow: Python DAGs --> operators/sensors you code
Comparison
| Dimension | ADF | Airflow | |---|---|---| | Authoring | Low-code + JSON | Python-as-code | | Hosting | Fully managed Azure | Self-managed or managed Airflow | | Strength | Copy data, Azure-native activities | Complex logic, reusable Python, open ecosystem | | Testing | Harder unit-test story | DAGs/operators testable as code | | Portability | Azure-centric | Multi-cloud / on-prem |
When ADF wins
Heavy Azure stack, lots of copy/ELT into ADLS/Synapse, prefer GUI + managed ops.
When Airflow wins
Complex branching, custom Python, multi-cloud, or team already lives in DAG-as-code.
Interview tip: "ADF = managed Azure pipelines (often low-code); Airflow = Python DAG orchestration." Say both schedule/depend/retry; the difference is authoring model and lock-in.