Ok.
El servidor es Win98?
Eso me suena tan... ilogico, pero tan comun.
Lo que necesitas es hacer profiling. La manera mas facil y a lo bruto, es crear un archivo de texto donde haces logs y le pasas un texto y un dato DateTime.
Metes llamadas:
Guardar('Toy abriendo conexion');
Guardar('Abri');
Guardar('Primer select');
Comparas y donde este la diferencia alli es.
Tambien puede servirte una verdadera herramienta de diagnostico del sistema y sus rendimientos como
http://www.sysinternals.com/Utilitie...sExplorer.html
Es lo mejor que hay.
Asi de forma intuitiva me suena a un problema de redes. Win98 es una caspa en eso.
Estas usando un stack de redes superior (NT) hablando a uno inferior (9x). Seguro ademas usas NetBios en vez de Tcp/Ip. Si quieres una mejora, aparte de usar un OS de servidor decente como cualquier Win2000+, inabilita en AMBOS lados todo lo que diga netbios. NetBios es uno de los protocolos de red mas ineficientes por sus caracteristicas multicast.
No debes tener un servidor DNS. Monta uno o conecta usando TCP/IP.
Pero primero, haz el profiling, porque puede dar por otro lado.