Q:

How computer adds two number internally?

i believe computer must be achieving it with the help of exclusive OR with   bitwise  left shift opeartor. correct ?
Here is the implementation in java 
public class TestAddWithoutPlus {

    public static void main(String[] args) {
        int result = addNumberWithoutPlus(6, 5);
        System.out.println("result is " + result);

    }

    public static int addNumberWithoutPlus(int a, int b) {
        if (a == 0) {
            return b;
        } else if (b == 0) {
            return a;
        }
        int result = 0;
        int carry = 0;

        while (b != 0) {

            result = a^b; // SUM of two bits is A XOR B
            carry = (a&b); // CARRY is AND of two bits

            carry = carry << 1; // shifts carry to 1 bit to calculate sum
            a=result;
            b=carry;

        }
        return result;
    }

}

A:

I'll answer for a typical bit-parallel processor as would be seen in personal computers, microcontrollers, etc. This does not apply to a bit-serial architecture, which is more often seen in specialized situations such as certain types of DSP and certain FPGA designs.
Typically this is not the case, since for a narrow width such as 32 or 64 bits, an adder circuit is more efficient than serial addition as you show, since it can complete an addition asynchronously, as opposed to over multiple clock cycles.
However, the principle is the same for a basic ripple-carry adder--the adder for the least-significant bit calculates a bit of the result and a carry bit, which is passed into the full adder corresponding to the next bit as the carry in, and so on, as shown in this image:

Source: Wikimedia Commons, user cburnett, under Creative Commons 3.0 Share-alike
In practice, however, the fact that a carry coming from the LSB adder may need to propagate all the way to the MSB adder poses a limitation on performance (due to propagation delays) so various lookahead schemes may be used.

