Когда ваше настольное приложение запускается, первое, что вы должны сделать в Program.cs, это:
System.Threading.Thread.CurrentPrincipal = new System.Security.Principal.WindowsPrincipal(System.Security.Principal.WindowsIdentity.GetCurrent());
По умолчанию CurrentPrincipal - это GenericPrincipal, который не аутентифицирован. Кроме того, помните, что вам нужно выполнять этот код в любых потоках, которые вы раскручиваете.
Вам также необходимо настроить Wcf так, чтобы он подключался к вашей службе, вероятно, аналогично тому, как вы настроили его для Silverlight.