The following information is an extract from communication we are having with Microsoft as part of the Ascend initiative. Hope it adds some value to you as well ...
The connection caching changes should be available in beta2.
The TcpChannel constructor takes a property bag (this is also exposed in config) that allows you to set the socket cache timeout. If you set this to 0 then sockets will not be cached and every connection will be new, which will allow the TcpChannel to load balance appropriately.
Here is some sample code:
IDictionary properties = new Hashtable ();
// enable load balancing
properties["socketcachepolicy"] = SocketCachePolicy.AbsoluteTimeout;
properties["socketcachetimeout"] = "0";
TcpClientChannel channel = new TcpClientChannel (properties,null);
Here is some sample code for the config file:
<channel ref="tcp" socketCachePolicy="AbsoluteTimeout" socketCacheTimeout="0" />