Create Multiple Output transactions with Bitcoin Core I am new to multiple output transactions with bitcoind and I want to learn how to implement them. 

Let's say I want to create 2-3 addresses and send 1 btc to the generated addresses. If I want to send 0.4 btc to address1, 0.4 btc to address2 and 0.2 btc to address3, should I create a raw transaction specifying each bitcoin address that will be spent? 
If so, I have another doubt; if I want to create a raw transaction, I need a unspent transaction and I know that I can list unspent transaction outputs using listunspent, but what happen if I don't have any unspent transaction on the bitcoin server? How can I get a list of unspent transactions from blockchain?
If I understand your question correctly, you want to &quot;spread&quot; bitcoins in a single transaction over several addresses.
I think the question to multi-sig is misleading here, more sophisticated guys to prove me wrong :-).
The standard transaction in bitcoin would have one ore more inputs (from previous transactions), and one or two outputs (with adresses). The first output address is usually the target, where you want to send the satoshis, and the second output is &quot;a return address&quot;. A return address in the sense, that you don't loose your funds as transaction fees. Usually this second address is one of your wallets many addresses, that were initially created for you.
Multisig has the goal to lock satoshis to a single adress, and requires 2 or more signatures, to be able to unlock (and thus transfer) the values (there are &quot;n of m&quot; combinations possible, here are further details: https://bitcoin.org/en/developer-guide#escrow-and-arbitration, and limits are discussed here: What are the limits of m and n in m-of-n multisig addresses?). Again, the output part of such a multisig transaction would work in a similiar fashion like the standard transaction. You can define one or two addresses in the same way as with standard transactions.
The last two questions are slightly missing the concept of transactions and blockchain:
1.) ... but what happen if I don't have any unspent transaction on the bitcoin server?
Basically you are not the owner of an &quot;unspent transaction&quot;.
You would have a wallet, and in the wallet you would see satoshis. This is the abstraction  model. In reality satoshis are assigned from address to address with the help of a transaction. This means, you need to have an address, to which satoshis are linked, to be able to spend something. Usually this happens, because you bought bitcoins. Therefor you need to have a wallet, and this wallet creates some addresses for you. One of these addresses would be given to the seller, and he would create a transaction with your bitcon address as target address. This &quot;fills&quot; your wallet with an inital amount of satoshis.
How can I get a list of unspent transactions from blockchain?
Purpose is slightly unclear -  maybe it is linked to the previous question.
We usually say &quot;Unspent Transaction Output&quot; (UTXO). This is a value, that can be seen in any transaction, that transferred satoshis. In the example I gave before, the value that you see in your wallet. You can use this to create a new transaction. Details again in the developpers reference link.