Remo Freuler hade en fin första halvlek borta mot Tyskland.
I den femte minuten lyfte han in bollen så att Mario Gavranovic kunde nicka in 1-0. 20 minuter senare utökade Freuler till 2-0 med en vacker chipp över Manuel Neuer i den tyska målburen.
Gavranovic tvåmålsskytt
Då var det skakigt i Tyskland.
Men Timo Werner reducerade till 1-2 en halvtimme in i matchen. En knapp timme in i matchen kom 2-2 från Kai Havertz.
Gavranovic klev fram igen för Schweiz. Efter en svag tysk offsidefälla dunkade han in 3-2 till Schweiz.
Toppar gruppen
Sen kom matchens delikatess.
Timo Werner tog sig runt på högerkanten och passade in bollen längs marken. Där kom Serge Gnabry och klackade vackert in slutresultatet 3-3.
Spanien toppar gruppen på sju poäng, en före tvåan Tyskland och trean Ukraina. Schweiz är jumbo med två poäng.