There is a big difference - talking about transfer rate, object serialization - to send to WCF service an object or a list with one object?
In other words, if i have to transfer 1k of objects or 1k of list that has only one object.
Obs: This doubt is about a code that i have to create, if there is, i'll create two methods, one that send an object and other to send a list (if there is a lot of objects to send). But if there isn't, i'll create only one method that sends a list (that can have one or more objects to send).
No there isn't that big of a difference between sending a list of one object and one object. What you are thinking about is a micro optimization. I am positive there are several other places in code that you can speed up your application besides working about sending an object vs a list of objects.
Here's why. Think about what it takes to serialize a list. A list is really nothing more than an array which is just several of the same type of object. Sure there is some small amount of extra work the system has to do say, "Hey this is a list" rather than just one object, but it is unbelievably minor. You can test it yourself. The amount is unbelievably minor.
Now here is where you need to think about what you are doing. The serialization isn't the problem. It's in the code. You can write code to handle one object quickly, but can that same code handle say 1000, 10,000 etc. When you allow a list to be transferred, and you haven't set an upper limit (by say throwing an exception, not ideal, but it does work), you are opening up to the possibility that someone can pass in a really large amount data. This is where timeouts in code begin to have problems. You can't ever assume that someone will only pass in say a list with 10 objects, so then the question is, "do you have to make it asynchronous?" That is a lot more work to get it right. So you should be asking yourself, is it worth creating a second method to handle the possibility of processing a large amount of data? Data serialization in .Net is really pretty good. Yes, there custom solutions which can make it faster, but it in many scenarios, it is the least of your worries.