Hola ...
Te cuento que en una ocasion un compañero estuvo viendo una aplicacion que tenia una concurrencia de usuarios muy muy alta, para esa aplicacion se usaron metodos estaticos para el acceso a datos ... Finalmente el error salio a la luz cuando los hilos de ejecucion usaban el mismo metodo.
Puedes darle un vistazo al Data Access Application Block for .NET de Microsoft (SqlHelper.cs)...
http://msdn.microsoft.com/library/de...ml/daab-rm.asp
Otro punto interesante es la arquitectura para aplicaciones (las famosas 3 capas), puedes basar tus aplicaciones en la arquitectura mostrada en el ejemplo del PetShop (performance y escalabilidad) este ejemplo esta en la pagina del msdn.
http://msdn.microsoft.com/library/de...bdasamppet.asp
Finalmente, si pretendes crear un componente de acceso a datos definitivamente tienes que darle un vistazo a el manejo de transacciones usando COM+.
Saludos cordiales
Luis Alberto Niño de Guzmán B.