Are there minimum transaction fee, and is it based on the number of input transaction (UTXO)?
are there minimum transaction fees?


No, you could also pay no fee but your transaction will probably not be included in a block then. This is a pretty old example-transaction with no fee paid: https://blockchain.info/de/tx/8131ffb0a2c945ecaf9b9063e59558784f9c3a74741ce6ae2a18d0571dac15bb


  and is it based on the number of input transaction


Not on the number but on the size in Bytes.


  So is there harm for having too many small/dust UTXOs?


Yes. You can see it at the moment. People pay around 1.80$ for a "one address to one address"-transaction. More inputs/outputs means a bigger size. Bigger size means higher fees.