1) Windows Forms - один из методов разработки приложений с графическим интерфейсом для Windows, WPF - другой (для Vista, 7 и XP SP2). В общем, Windows Forms отлично подходит для простых, быстрых и грязных приложений, а WPF хорошо работает для более сложных и броских приложений.
2) Windows Phone использует Silverlight для неигровых приложений и XNA для игр. В обоих случаях вы можете использовать C # в качестве логического слоя. Другими словами, код C # решает, куда поместить вещи в пользовательском интерфейсе, а Silverlight или XNA - это разные способы общения с дисплеем.
Будьте внимательны при поиске учебников по Silverlight, потому что не все Silverlight есть на телефоне.