La vera differenza tra Delphi e .Net (qualsiasi linguaggio, tanto con .Net cambia solo la sintassi), è che il primo è per SVILUPPO NATIVO, quindi a 32 bit o 64 (Win32/x64), mentre .Net è sviluppo in codice gestito (managed code), che deve portarsi dietro un framework.
Se si vogliono sviluppare quindi utility di sistema, programmi a basso livello, ma anche gestionali in modo nativo per le piattaforme Windows a 32 o 64 bit, Delphi rimane il linguaggio ideale: potente come C++ ed elegante come Java. Permette di fare cose impossibili per gli applicativi .Net, che hanno molte facilitazioni ma appoggiano su un substrato software che rallenta le applicazioni, mentre gli eseguibili compilati con Delphi sono veri e propri file le cui isctruzioni sono eseguite dalla CPU.
Il punto è se tu pensi di sviluppare gestionali o anche utility, videogiochi o altro che non hanno devono avere bisogno di nulla per poter essere eseguiti, se vuoi nemmeno l'installazione. Altrimenti se sei proprio legato al mondo Microsoft e provieni da VB, magari .Net è quello che fa per te con tutte le sue facilitazioni e classi già pronte, ideale per gestionali ed applicazioni web (ma nota che VB.Net non è VB, è tutta un'altra cosa e, anzi, ti consiglio se devi iniziare di iniziare con C #e non VB.Net).
Con Delphi, infine, devo sottolinearti che ci fai di tutto, dalle utility a basso livello, ai videogiochi ai gestionali che utilizzano tutte le tecnologie Microsoft per l'accesso ai dati o anche quelle open source. L'unico campo precluso a Delphi ed ancora appannaggio del C, sono i driver. Per sviluppare driver hardware con Delphi devi dotarti del DDK (Driver Development Kit) e farli in C.