2. Is utf-8 or utf-16 is different character encoding?
Yes and no.
As a set of numbers representing characters, there is only one encoding. However, as the numbers require 21 bits, there are different ways of storing these numbers as a sequence of 8-bit numbers (UTF-8) and as 16-bit numbers (UTF-16). To that extent, they are different character encodings.
1. does unicode is machine dependent?
When viewed as a sequence of bytes, there are two main ways of storing a 16- or 32-bit number - most significant byte first ('big-endian'), or least significant bit first ('little-endian'). If the order is not specified, there may be a machine-dependent default (a 'higher order protocol' in Unicode jargon).