The semi-final was held on 12 May 2004 at 21:00 (CET). 22 countries performed and all participants voted except France, Poland and Russia. This was the first ever semi-final in Eurovision history.

Countries shown bold qualified for the Eurovision Final

Draw Country Language Artist Song Place Points
01 Finland English Jari Sillanpää "Takes 2 to Tango" 14 51
02 Belarus English Aleksandra and Konstantin "My Galileo" 19 10
03 Switzerland English Piero Esteriore and the MusicStars "Celebrate" 22 0
04 Latvia Latvian Fomins and Kleins "Dziesma par laimi" 17 23
05 Israel English, Hebrew David D'Or "Leha'amin" (להאמין) 12 57
06 Andorra Catalan Marta Roure "Jugarem a estimar-nos" 18 12
07 Portugal Portuguese Sofia Vitória "Foi magia" 15 38
08 Malta English Julie and Ludwig "On Again... Off Again" 8 74
09 Monaco French Maryon "Notre planète" 19 10
10 Greece English Sakis Rouvas "Shake It" 3 238
11 Ukraine English, Ukrainian Ruslana "Wild Dances" 2 256
12 Lithuania English Linas and Simona "What's Happened to Your Love?" 16 26
13 Albania English Anjeza Shahini "The Image of You" 4 167
14 Cyprus English Lisa Andreas "Stronger Every Minute" 5 149
15 Macedonia English Toše Proeski "Life" 10 71
16 Slovenia English Platin "Stay Forever" 21 5
17 Estonia Võro Neiokõsõ "Tii" 11 57
18 Croatia English Ivan Mikulić "You Are the Only One" 9 72
19 Denmark English Tomas Thordarsson "Shame on You" 13 56
20 Serbia and Montenegro Serbian Željko Joksimović & Ad-Hoc Orchestra "Lane moje" (Лане моје) 1 263
21 Bosnia and Herzegovina English Deen "In the Disco" 7 133
22 Netherlands English Re-Union "Without You" 6 146