Wales debutant Nathan Broadhead secured a stunning 1-1 draw for Robert Page's side as they scored with their only shot on target in Split.
Andrej Kramaric's sweetly struck shot on 28 minutes gave the hosts a deserved half-time lead.
Wales improved after the interval and might have levelled on the hour, but Dan James' volley missed the target.
Ivan Perisic hit the bar as Croatia sought a second, but Broadhead levelled from close range in injury-time.
The goal, after a long throw caused chaos in the Croatian penalty area, came totally against the run of play, but Wales will not care a jot after securing an unexpected point.
Croatia had won 34 and drawn one home European qualifier in their history.
But Wales upset the odds in the third minute of added time through Broadhead, who plays in League One for Ipswich Town.
Croatia fail to shrug off slow starter tag
Good in tournaments, slow starters in qualification, or so the cliché goes, but there were no signs of a World Cup hangover from the hosts until their late implosion.
It took Croatia less than three minutes to emphasise both their threat and quality as they pressed Wales into turning over possession and allowed Luka Modric plenty of space to shoot from distance, but Danny Ward was able to save on the stretch.
Roared on by an enthusiastic and passionate crowd, Croatia dominated the early exchanges and Kramaric forced Ward into another fine save on 15 minutes from a sweetly-struck volley.
A home opening goal began to feel inevitable even after Perisic saw his effort ruled out for a foul on 27 minutes, with Croatia's dominance clear.
However, Wales will be disappointed in the manner they fell behind, with Joe Rodon and Neco Williams outmuscled by Kramaric who fired into the bottom corner of the net from 20 yards.
Wales' problems might have mounted had Kramaric opted to pass to Perisic instead of shooting as he sent a wasteful effort off target.
Poor finishing was all that prevented Wales from falling out of contention and they received a slice of fortune when Mateo Kovacic blasted over after Kramaric's pass gave him a clear sight of goal from just outside the six-yard box.
Chances were less frequent from the hosts in the second half, but they dominated possession and always seemed in control.
Croatia should have scored more, with Perisic's shot from a tight angle cannoning back off the crossbar in what proved a vital moment.
Nathan Broadhead joined Ipswich from EvertonPage's new era begins with debut goal
This was a much-changed Wales side from the one we saw at the World Cup, with retirements and injuries forcing Page into changes in personnel and formation.
The plan was to exhibit a more athletic side than the one that disappointed in Qatar, but while they defended resolutely, Wales were poor in possession.
Far from catching Croatia cold, it was Wales who started in what is becoming a customarily slow fashion, with Page's side now conceding the first goal in each of their last nine competitive games.
It took until the 42nd minute for them to even get a sight of goal, with Harry Wilson's free-kick over the bar their only shot on or off target before the break.
The challenge for Page was emphasised by his bench, with six of their 12 substitutes having never played an international match.
However, Wales should have equalised on 60 minutes when James failed to hit the target after Wilson's clever pass gave him a clear sight of goal.
With momentum with them it was therefore surprising that Page opted to rest the legs of skipper Aaron Ramsey and forwards Wilson and James on 64 minutes, with the Wales boss opting for a triple change that included a call for Broadhead.
And the substitute stole the headlines as he sneaked in at the back post deep into added on time to tap home after Chris Mepham's header fell to him when Croatia failed to deal with a Connor Roberts long throw.
Line-ups
Croatia
Formation 4-3-3
1Livakovic
22Juranovic6Sutalo4Gvardiol19Sosa
10Modric11Brozovic8Kovacic
9Kramaric20Livaja14Perisic
1Livakovic22JuranovicBooked at 31mins6Sutalo4Gvardiol19Sosa10ModricSubstituted forMajerat 90+3'minutes11Brozovic8KovacicSubstituted forPasalicat 76'minutes9KramaricSubstituted forVlasicat 76'minutes20LivajaSubstituted forMusaat 53'minutes14PerisicSubstitutes
2Stanisic3Barisic5Erlic7Majer12Grbic13Vlasic15Pasalic16Ivanusec17Musa18Orsic21Vida23LabrovicWales
Formation 4-4-1-1
12Ward
14Roberts5Mepham6Rodon3N Williams
8Wilson16Morrell15Ampadu20James
10Ramsey
13Moore
12Ward14Roberts5Mepham6Rodon3N Williams8WilsonSubstituted forThomasat 64'minutes16MorrellSubstituted forJamesat 90+2'minutes15AmpaduBooked at 25mins20JamesSubstituted forBroadheadat 64'minutes10RamseySubstituted forBurnsat 64'minutes13MooreSubstituted forBradshawat 70'minutesSubstitutes
1King2Fox4Cabango7Cooper9Bradshaw11Harris17James18Lockyer19Burns21Davies22Thomas23BroadheadLive Text
Match ends, Croatia 1, Wales 1.
Second Half ends, Croatia 1, Wales 1.
Attempt saved. Ivan Perisic (Croatia) right footed shot from the centre of the box is saved in the centre of the goal.
Goal! Croatia 1, Wales 1. Nathan Broadhead (Wales) left footed shot from the left side of the six yard box to the bottom left corner. Assisted by Chris Mepham with a headed pass.
Substitution, Croatia. Lovro Majer replaces Luka Modric.
Substitution, Wales. Jordan James replaces Joe Morrell.
Attempt saved. Ivan Perisic (Croatia) left footed shot from outside the box is saved in the centre of the goal. Assisted by Mario Pasalic with a headed pass.
Luka Modric (Croatia) wins a free kick in the attacking half.
Foul by Joe Morrell (Wales).
Attempt saved. Nikola Vlasic (Croatia) right footed shot from outside the box is saved in the centre of the goal. Assisted by Marcelo Brozovic.
Ivan Perisic (Croatia) hits the bar with a left footed shot from a difficult angle and long range on the left. Assisted by Luka Modric.
Attempt blocked. Josip Sutalo (Croatia) header from the centre of the box is blocked. Assisted by Luka Modric with a cross.
Corner, Croatia. Conceded by Joe Rodon.
Corner, Croatia. Conceded by Ethan Ampadu.
Attempt blocked. Josko Gvardiol (Croatia) header from the right side of the six yard box is blocked. Assisted by Luka Modric with a cross.
Corner, Croatia. Conceded by Connor Roberts.
Substitution, Croatia. Nikola Vlasic replaces Andrej Kramaric.
Substitution, Croatia. Mario Pasalic replaces Mateo Kovacic.
Attempt missed. Neco Williams (Wales) right footed shot from outside the box is just a bit too high. Assisted by Joe Morrell with a headed pass.
Foul by Ivan Perisic (Croatia).