A Brief :
Alice and Bob is trying to communicate without wanting Eve (which is listening) to know what they are going to talk about.
So
Bad Eve


Alice + Bob
3^x % 17
3^15 %17 => 6
3^13 %17 => 12
Bad Eve ( knows : 3^x %17 , 12,6)


Alice + Bob
(15)private (13)private
12(Bob's) 6(Eve's)
((other's public num) ^ secret number) % 17
12^15 % 17 => 10
6^13 % 17 => 10
x
3^x % 17
15
13
Console.WriteLine(BigInteger.Pow( new BigInteger(3213213213212123332), 6549875) % 17);
3213213213212123332 ^ 6549875 % 17
The thing you're missing is called modular exponentiation. This is a fast method for calculating huge exponentials modulo some value.
For example, suppose you want to calculate (123^456) mod 777.
If you perform the exponentiation first, you'll get a result with about 1000 digits. For the sort of values typically used in DH key exchange, you could end up working with many more digits, possibly even millions. This is clearly not at all efficient.
Modular exponentiation breaks the problem down into much easier steps. There are two mathematical identities that make this possible:
 (x^a) × (x^b) = x^(a+b), and
 (x^y) mod n = ((x mod n)^y) mod n
The first of these should be fairly selfevident. The second can be proved as follows:
If x mod n == z, then x is equal to (c×n + z) for some integer value of c. The binomial expansion of (c×n + z)^y has (y+1) terms
c^y×n^y + k1×c^(y1)×n^(y1).z + k2×c^(y2)×n^(y2)×z^2 + ... + k(y1)c×n×z^(y1) + z^y
(where k1 ... k(y1) are binomial coefficients)
All of these terms except for the last one (z^y) are multiples of n, and are therefore equal to zero (mod n). Therefore (x^y) mod n == (z^y) mod n == ((x mod n)^y) mod n.
To calculate (x^y) mod n, repeatedly multiply x by itself to obtain the following sequence:
X0 = x mod n
X1 = X0×X0 mod n = x^2 mod n
X2 = X1×X1 mod n = x^4 mod n
X3 = X2×X2 mod n = x^8 mod n
X4 = X3×X3 mod n = x^16 mod n
Now multiply together the terms in this series that correspond to the set bits in the binary representation of y. For example, suppose y=21:
(x^21) mod n = ((x^16) × (x^4) × x) mod n = (X4 * X2 * X0) mod n
There are two advantages of doing the calculation this way. First, the largest number you will have to calculate will have at most twice as many digits as the modulus n. Second, the number of calculations you have to perform is proportional to the (base 2) logarithm of the exponent, which means the calculation will run millions of times faster for exponents like 6549875.