Remaining bitcoins sent to a different address Let's say I have 20 bitcoins in address A. I sent 5 bitcoins from address A to address B. Why is that the remaining bitcoins got sent to address C that I never used or knew before. 

I still get access to the remaining 15 bitcoins using the private key of A, but it doesn't show anymore in recipient address A. This is very confusing and would appreciate if someone would clarify.

Also, when I need to receive any bitcoins, which I address should I use? Original address A or address C?
Your bitcoin client must have used a full UTXO to paid for your transactions, since you didnt own the exact amount your bitcoin client created a new private key where it send the remaining ( 20-5 = 15 ) bitcoins, also you had to pay a fees to the miner who mined the block that got your transaction.

To learn more about this process you should go there https://en.bitcoin.it/wiki/Change 

If you want to receive new coins, The most private and secure way would be to use a new address given by your wallet, I suggest you to learn about HD wallet who can give you automatically a new address each time you want to receive new bitcoins.