Aunque estoy algo oxidado con Delphi, es posible hacer al dia de hoy algo parecido. Y hay buenas tecnicas de programacion (como aislar la UI) que son universales.
El asunto es que hay que estudiar. Y salir de la "zona de confort" con frequencia: Eso NO OBLIGA a cambiar de lenguaje, mas bien, ayuda a hacer las cosas mejores.
Por ejemplo, en estos dias:
Hice el tutorial de kdb+, leido sobre el lenguaje Elixir & clojure & scala & otros , intentando hacer un lenguaje de programacion en F#...
Y al final siempre termino haciendo todo en python
P.D: Y me parece aun mas instructivo que ver C#, aprender F#:
http://fsharpforfunandprofit.com/
Porque si que te saca de la zona de confort (sin ir TAN lejos como con haskell & clojure)
En especial esto es MUY instructivo:
http://fsharpforfunandprofit.com/fppatterns/