I have been programming Visual Basic for a while now and I want to try something new. I looked at Delphi which seems half VB and half C++, which seems perfect for me. However, I have read about C# and it seems that this language could take over Delphi (unless Delphi.NET is good enough). Is C# more or less the same as Delphi and a bit like VB or is it totally different altogether?

Also, is it possible to download compilers for both for free?