Как перейти с PHP на C# (не по стандартным учебникам)?
Почитать наверное все-таки придется. 
1. Ваш print_r($sum) по идее должен выбросить хотя бы варнинг тк вы создали $sum в цикле, а пользуетесь им вне цикла. В шарпах он там не будет существовать.
2. В шарпах есть типы. Создавать числа как строки никто не будет. Смыла нет. Так же нет смысла преобразовывать число обратно в строку.
Создать список с числами (не строками) от 100 до 999.var numberList = Enumerable.Range(100, 999).ToList();
Не надо конвертировать число в строку (ваш метод так себе). Надо использовать остаток от деления на 10. Для 650 вернет 11.int sum = 0;
for (int n = x; n > 0; sum += n % 10, n /= 10);
На олимпиадах ненавидят Linq :D
Весь ваш пример, включая генерацию списка. Сохраняет сумму в новый список.var numberList = Enumerable.Range(100, 999).ToList();
            var result = numberList.Select(x =>
            {
                int sum = 0;
                for (int n = x; n > 0; sum += n % 10, n /= 10);
                return sum;
            });
            ;
PHP для детей не потому, что там много библиотечных функций.
Напиши какой-нибудь маленький проект на С# и .NET
Если интересует мобильная разработка, для интереса можешь попробовать на Xamarin пописать.