По умолчанию C # рассматривает 576/1000 как целочисленное деление, поэтому в качестве результата вы получаете целое число.
В VB.NET это рассматривается как деление с плавающей запятой.
Добавляя «.0» к числу в C #, вы явно сообщаете ему, что это число является числом с плавающей запятой, и, следовательно, деление становится также с плавающей запятой.