Zagreb doesn't get the nonstop treatment from Chicago, and after a dozen crossings on this itinerary, I've come to appreciate the forced connection as part of the ritual rather than a nuisance. There is no direct option: business class from Chicago to Zagreb routes through European hubs, with Lufthansa via Frankfurt or Munich and Turkish Airlines via Istanbul the two most consistent choices, while Croatia Airlines (OU) picks up the intra-European leg on codeshare or standalone tickets once you're on the continent. Total journey time typically runs 14 to 16 hours including the connection, against roughly 11 hours of pure flying. Lufthansa's long-haul segment out of ORD is increasingly operated with the new Allegris business seat on select aircraft, though older business-class configurations still appear depending on rotation, so it's worth checking the specific plane before booking if a door and fully flat bed matter to you. Turkish Airlines counters with its well-regarded lie-flat business product and one of the more indulgent business lounges anywhere, in Istanbul, which alone makes the connection worthwhile if you have a few hours to spare.
My strong preference is the Istanbul routing when schedules allow — not just for the lounge, but because Turkish's onward flights into Zagreb are timed well for a same-day arrival without the red-eye grogginess that the Frankfurt or Munich connections can produce in shoulder season. If you're transiting Frankfurt instead, budget extra time; passport control and the walk between concourses eats into tight connections more than people expect. Croatia Airlines, as the national carrier, is your best bet for the final short hop into Zagreb itself, and their business cabin, while regional in scale, is a pleasant, unfussy way to finish a long journey.
January through March and again in October and November are consistently the softest months for fares on this corridor, as Croatia's tourist season quiets down and demand dips before the next surge. Business travelers heading to Zagreb for meetings rather than sightseeing benefit most here — Adriatic leisure demand simply isn't competing for seats. Given how much these fares swing with hub routing and seasonality, setting up fare alerts for this specific city pair is far more effective than manually checking every few weeks.