Вы не должны размещать службу WCF внутри программы пользовательского интерфейса. WCF имеет очень специфическую модель потоков, которая не позволяет вашему пользовательскому интерфейсу работать нормально.
По сути, схема потоков WCF изменяется в зависимости от выбранного поведения управления экземпляром, а также, когда в течение периода времени нет запросов, достигающих службы, WCF может приостановить работающий поток. Все это вызовет проблемы с пользовательским интерфейсом.
Что я делаю в этой ситуации, так это создаю Службу Windows, на которой размещается WCF , и создаю ServiceContract для предоставления необходимых данных в пользовательский интерфейс мониторинга. Этот пользовательский интерфейс будет работать независимо в своем собственном exe-файле, являясь другим клиентом службы и получая данные из службы по мере необходимости.
Надеюсь, для тебя есть смысл.