Croatia beat Serbia in doubles to advance to the Davis Cup final after Novak Djokovic couldn't follow up his single's win in the decider.
Croatia will seek its third Davis Cup on Sunday against the winner of Saturday's other semifinal between Russia and Germany.
Nikola Mektic and Mate Pavic, the top-ranked doubles pair, beat Djokovic and partner Filip Krajinovic 7-5, 6-1 on the Madrid Arena's indoor hard court on Friday.
In a meeting pitting the world's No.1-ranked singles player against its best pair, Mektic's and Pavic's well-honed teamwork proved too much for the 20-time Grand Slam winner.
Djokovic had already done what he could to force the doubles match by beating Marin Cilic 6-4, 6-2 to even the tie at 1-1.
Borna Gojo put Croatia in front by upsetting Dusan Lajovic 4-6, 6-3, 6-2 in the opening singles.
Serbia won the previous two Davis Cup meetings with Croatia since they became independent nations following the breakup of Yugoslavia.