What type of remoting are you using?
You have different options for how you communicate with the remote objects, this article describes some of the options. Pay particular attention to the 'Hosting Options' section
.NET Remoting: design decisions and best practicies[
^]
"Hosting remote applications on Microsoft Internet Information Services (IIS) involves less development work than hosting applications in Windows services. However, performance with IIS is slower than with Windows services because hosting applications in IIS adds the overhead of a Web server. Also, IIS supports only the HTTP protocol. Because of this limitation, you cannot take advantage of the performance of TCP, which is a protocol with far less overhead."
An application we support uses
binary remoting over TCP using a Windows Service on the host server. Performance is really good here, it can handle 1000 rows no problem.
There are a number of places you need to check for performance
* The database itself. Is your query running quickly, does it generate and return the data responsively?
* Object serialization. Is this happening quickly? How many columns in your DataTable etc?
* Communication. Depending on the remoting configuration you have selected, performance will vary.
See this article on MSDN, go to the performance comparison
http://msdn.microsoft.com/en-us/library/ms973841.aspx[
^]
""WS_TCP_Binary, as shown above, in which the object is configured to use the TCP channel and the Binary formatter with host being a Windows service, outperforms other distribution techniques. The reason for this is that this approach transmits binary data over raw TCP sockets, which are more efficient than HTTP. and since the data does not have to be encoded/decoded, there is less processing overhead. We see around 60% performance spread between WS_TCP_Binary and the slowest approach."
If your application is internal in nature and security is *less* of a consideration, TCP over binary is probably the way to go.
"If raw speed really is of primary importance, then this "60% performance spread" may be significant. The drawback is the need to host the server inside a Windows service in order to use the TCP protocol (see the earlier section on Remote Hosting). Effectively, this trades off security for performance, and as an approach is "not recommended over the Internet or a non secure Intranet."
So, it's down to you to check these things out and make a decision on the best configuration to choose, based on your user requirement :)