Well, thank you very much Sir. But if X and Y addresses can be used to send funds in one transaction, how the transaction fees are calculated? Do you pay fees for each address sending funds? Or both addresses are combined in a single transaction and you pay a single fee?
Satoshi was referring that for better anonymity it's better to use different addresses for each input, and let's say, you had random ~100 inputs of micro-transactions to different addresses, and want to withdraw all of them on a different, single address? How it is being processed technically, do you pay fees as if you were sending Bitcoin from one address to another (X to Y)?
You pay more fees as the transaction is bigger in size. And its size is based on the number of inputs and outputs.
If I use the same case A which I posted above, I have 2 inputs (1 BTC, 0.5 BTC). If I send the whole amount (1.5 BTC) to one of Binance's addresses, it will have 1 output. The final transaction will be of 2 input, 1 output. Every input weights X and every output Y, the sum of them will be Z. If I multiply Z (the size, in bytes) by the amount of fee I decide to use (in satoshis per byte), I get the total fee paid.
In easy words, we pay more fees according to:
1. how many inputs we have (how many separate transactions we received that we are going to spend);
2. how many output we have (how many addresses we are sending to; so, if we send to 3 addresses, we pay more fees than sending to 1 address).
If we have 100 inputs of micro transactions, we will have to pay a lot of fees and this will probably eat a big part of our total amount. That's why dust transactions are called "dust" and are sometimes considered useless (you pay more in fees to spend them than the actual amount you are sending).
Now, if instead of the 100 inputs of micro transactions I get the whole amount in 2 inputs, I will pay 50 times less fee for the same cost/effective.