Если у вас есть контроль над всеми приложениями, которые будут взаимодействовать с вашим серверным приложением, и вы можете гарантировать, что они всегда будут работать в Windows (в отличие от Mono), я бы порекомендовал WCF, поскольку он будет обрабатывать большую часть тяжелой работы длявы.Если вы работаете в .NET 4, то вы можете воспользоваться новой функциональностью WCF Discovery , чтобы уменьшить ваши административные проблемы.
Если вы решите использовать обнаружение, хотя я бы порекомендовал также встроить кэш расположения службы, потому что 100-1000 UDP-широковещательных передач снова и снова могут поставить вашу сеть на колени (и тогда вы станете сетьюадминистратор будет винить вас за проблемы с сетью до конца времени).