Ответ 1
Microsoft поставила много работы, чтобы сделать Javascript языком первого порядка на уровне с С# для разработки WinRT. Оба Javascript и С# имеют прямой доступ к API WinRT через языковые прогнозы. То есть существует уникальная привязка, специфичная для языка, к базовому API. Таким образом, ни один язык не является более "родным", чем другим.
Вы должны иметь возможность написать эквивалентное приложение Metro на любом языке. На высоком уровне это действительно сводится к тому, на каком языке/среде вам более комфортно.
Однако есть несколько отличий, которые должны учитывать это решение. Во-первых, компоненты WinRT могут быть записаны только на С# или С++. Javascript может использовать только эти компоненты. Если есть намерение создавать повторно используемые/совместимые компоненты, следует помнить об этом.
Во-вторых, хотя Windows Phone 8 SDK еще не выпущен, есть признаки того, что приложения Windows Phone 8 могут быть записаны только на С#. Если есть намерение создавать похожие приложения как для планшета, так и для телефона, это, вероятно, серьезное рассмотрение.
Не было много исследований на основе производительности, сравнивающих их в приложении Metro, поэтому трудно сказать, станет ли это фактором или нет.
Тогда есть и сторонняя поддержка. С#/XAML хорошо зарекомендовал себя и имеет много сторонней поддержки. Но аналогично, Javascript имеет много доступных сторонних библиотек (например, jQuery), которые по большей части могут быть добавлены и использованы в приложении Metro. Я бы немного отказался от С#/XAML, но похоже, что поддержка хороша для обоих.