Usted probablemente está ejecutando en este tema:
https://jira.mongodb.org/browse/CSHARP-406
El problema se ha solucionado y el arreglo será incluida en la versión 1.4 del controlador C# (saliendo pronto).
Mientras tanto, el mejor enfoque es aumentar el tamaño de la agrupación de conexiones desde el valor predeterminado de 100, que se hace fácilmente en la cadena de conexión:
mongodb: // localhost/MaxPoolSize = 200
Haga que el tamaño del grupo de conexiones sea lo suficientemente grande como para que haya más conexiones que hilos en ejecución (o al menos suficientes conexiones para satisfacer todos los hilos que necesitan una conexión al mismo tiempo).
El error es sobre la conexión, por lo que el argumento 'connectTimeoutMS' es más apropiado aquí. 'socketTimeoutMS' es por defecto infinito por lo que su sugerencia no mejora nada: http://blog.mongolab.com/2013/10/do-you-want-a-timeout/. –