"Dreiundzwanzig Uhr dreißig"
"Halb zwölf (nachts/in der Nacht)"
"Eine halbe Stunde vor/bis Mitternacht" if you feel you have to mention that, like on New Year's Eve
All are correct and formal.
With the twelve hour clock you use "halb" and "viertel vor/ viertel nach"; with the 24-hour clock the exact number of minutes is used. Full hours are just the numbers from 0 to 24 plus "Uhr", no silly "hundred" as in American usage. (sorry if you happen to be American, but there is no hundred anywhere on the clock)
Bavarians and Austrians also use "dreiviertel zwölf" (11:45 or 23:45)
native speaker, teacher
· 9 years ago