The IaC landscape fractured after the Terraform license change. This is the map to what each tool is actually best at, and how to choose without regret.
Infrastructure as Code stopped being a single obvious choice the day HashiCorp changed Terraform's license. What was a near-monopoly is now a real decision: stay on Terraform, move to the open-source fork, or rethink the whole approach with a tool that speaks a real programming language. This guide is the map: what each tool is genuinely best at, where the license and lock-in traps are, and how to pick without painting yourself into a corner you'll regret in two years.
There's no single winner. The right pick depends on your team's language comfort, which clouds you target, and how much you value a large ecosystem over a cleaner model.
Terraform is still the center of gravity: the largest provider ecosystem, the most examples, the most hireable skill. The complication is the license.
If writing infrastructure in HCL feels like fighting a templating language, the alternative is defining it in Python, TypeScript, or Go.
The decision usually comes down to four questions:
For most teams starting fresh in 2026, OpenTofu gives you the entire Terraform ecosystem without the license question, so it's the safe default. Reach for Pulumi when your team would rather write real code than HCL, and Crossplane only when you're deliberately building a Kubernetes-based platform. Whatever you pick, put remote state and policy behind one of the workflow platforms early, because the tool matters less than the discipline around state, reviews, and drift. Each linked comparison is a concrete matchup; start from your license stance and language preference, not the feature list.
Get the latest tutorials, guides, and insights on AI, DevOps, Cloud, and Infrastructure delivered directly to your inbox.
Explore more articles in this category
Terragrunt keeps large Terraform setups DRY and orchestrated, but small teams often pay its learning curve for little return.
A practical comparison of Kubernetes-native continuous reconciliation against the classic CLI-driven, state-file IaC model for platform teams.
Every CI/CD platform claims to be fast and easy. The real differences are in pricing, self-hosting, and where each one falls apart at scale. This is the map.
Evergreen posts worth revisiting.