Ваше приложение не несет ответственности за закрытие соединения, так же как оно не несет ответственности за его открытие.Под WinMo компонентом, который отвечает за соединение, является Connection Manager (CM), и, вообще говоря, все запросы на действия по соединению проходят через него.Например, когда вы открываете что-то вроде HttpWebRequest, CM получает уведомление и открывает для вас соединение.Закрытие соединения также выходит за рамки вашего приложения.Вы можете сказать CM, что вам больше не требуется соединение, но CM ищет все приложения, поэтому не собирается просто закрывать соединение.Он будет поддерживать его в течение некоторого периода, если он либо используется, либо может вызываться другим приложением.
Так оно и есть.Вы не можете бегать вокруг этого с одним исключением.Как говорится в ответе, на который вы ссылаетесь, вы можете использовать RAS для принудительного закрытия соединения, но я бы не рекомендовал этого делать, потому что он может разозлить CM и оставить вещи в неопределенном состоянии.