Please don't mind grammatical errors, English isn't my motherlanguage.
Ethno means people/nation and genesis means endeavor. So ethnogenesys is a process of endeavor of a nation.
Here's something about Croatia ethnogenesys.
There are many assumptions about Croatian ethnogeneysy (CroEthno hereinafter) and the most popular ones are Slavic, Iranian and indigneous.
I will focus on Iranian, since there are many sources about Croatia having Iranian origin.
In 5th century before Christ (cn.b.C hereinafter), during the reign of Darius, somewhere around Irana and Afganistan, one flagstone was carved . The stone was showing nations of Persian empire who have come to worship the emperor. Among many nations, nation Haraxuat from Haraxuatia was also mentioned. Root of those words are same as the root of words Hrvat i Hrvatska (Croat and Croatia). Roofs of these words are iranian aswell.
Among 23 afganistanian languages, Croatian was mentioned, which is another source of Iranian ethno. Historians believe that Croatian nation moved to the West, because 2 carved stones were found around river Don and Azuric Sea. Words like Choroathos and Chorovathus were found on those stones.
That nation, under the rush of Huns in 4th cn.b.C moved under the Carphatians mountain. Slavic people were already there and that's why there's a theory about Slavic ethno.
And the last proof is that there's many words in Croatian language that has Iranian root and there is the "troplet" (picture of it), which is found only in Croatia and Iran.
That's it for todays history lesson :)