座標変換などでよく使われる、xyの二値から角度を求めるような場合にはAtan2メソッドを使用することができます。 Atan2メソッドは-π≦θ≦πの範囲で結果を返します。 また、Atanメソッドとは異なり、Atan2メソッドは引数の象限を考慮します。 そのため、引数y, xの値によってはAtan2メソッドとAtanメソッドで異なる結果となる場合があります。 また、Atan2メソッドでは、引数をy, xの順で指定する点に注意してください。

Atan2メソッドを使って座標(x, y)とx軸のなす角を求める
using System;

class Sample {
  static void Main()
  {
    double x, y;

    x = 1.0; y = 1.0;

    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan2(y, x));
    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan(y / x));
    Console.WriteLine();

    x = 0.0; y = 1.0;

    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan2(y, x));
    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan(y / x));
    Console.WriteLine();

    x = -1.0; y = -1.0;

    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan2(y, x));
    Console.WriteLine("({0}, {1}) : {2}", x, y, Math.Atan(y / x)); // AtanメソッドとAtan2メソッドで結果が異なる
    Console.WriteLine();
  }
}
実行結果
(1, 1) : 0.785398163397448
(1, 1) : 0.785398163397448

(0, 1) : 1.5707963267949
(0, 1) : 1.5707963267949

(-1, -1) : -2.35619449019234
(-1, -1) : 0.785398163397448

複素数を扱う場合はComplex構造体を使うことができます。 Complex構造体では直交形式・極座標形式の複素数を扱い、また相互に変換することもできます。 詳しくは複素数型を参照してください。