World number ones Nikola Mektic and Mate Pavic clinched the decisive doubles rubber over Fabio Fognini and Simone Bolelli 6-3 6-4 in one hour and 19 minutes.
Jannik Sinner had hit back from the brink to beat Maric Cilic and force the decider after the veteran Croatian had served for the match – and the tie – in the second set.
The 20-year-old Sinner forced his way into a second set tie-break which he won before ultimately claiming a 3-6 7-6 (4) 6-3 win.
The Croatians had got off to a flying start as world number 279 Borna Gojo earned a 7-6 (2) 2-6 6-2 win over Lorenzo Sonego, ranked 252 places above him in the world rankings.
Croatia, winners of the tournament in 2005 and 2018, will play either Serbia or Kazakhstan for the right to contest Sunday’s final in Madrid.
From news to politics, travel to sport, culture to climate – The Independent has a host of free newsletters to suit your interests. To find the stories you want to read, and more, in your inbox, click here.