I agree with Charles 99%. The exception is if you don't know C#, you can easily use VB.net and C#.net together in the same solution or project without issue. It's not as big of a deal as Charles suggests it might be, but he does have a point. The problem comes in to play if you modify any of the base controls within Kentico. If you do and you use VB, the upgrade/hotfix will overwrite them and you'll be back to C#.
I move legacy VB controls into C# apps all the time, simply so I don't have convert or rewrite the code and test it. I know it worked in VB and if I convert it or change it to C#, there could be logic changes and extensive testing will have to be done, which adds time to a project.
A few points to take away Lawrence:
- Kentico supports both VB & C#
- Any NEW code should be written in the applications primary language
- Moving legacy code (VB or C#) to a website developed in it's counterpart is fine, be sure you follow my second bullet point though.
See Microsoft documentation here about mixing multiple languages.
See additional reasons on StackOverflow.