C# - Adiocionando em List e Eliminando pares repetidos

Boa Tarde,

Bom estou fazendo um sistema que detecta os pares próximos…
que são adicionados em uma List …
Porém ele esta me trazendo pares repetidos…
Por Exemplo…

0 esta proximo de 1
1 esta proximo de 0

Sendo que 0 e 1, e 1 e 0, são a mesma coisa, como posso tratar isto para poder enviar pra uma list
e simplesmente mostrar os dados com um Foreach ?

por enquanto esta assim…
[color=red]
public void distanciaAvioesCal(){
float distancia;
float dx;
int idAviao;
float dy;
float xAviao;
float yAviao;
int idAviaoCheck;
float xAviaoCheck;
float yAviaoCheck;

	foreach(GameObject aviao in listaGeral){
		idAviao = aviao.GetComponent<DadosAviao>().id;
		xAviao = aviao.GetComponent<DadosAviao>().AviaoX;
		yAviao = aviao.GetComponent<DadosAviao>().AviaoY;
			foreach(GameObject aviaoCeck in listaGeral){
			idAviaoCheck =  aviaoCeck.GetComponent<DadosAviao>().id;
			if(idAviao == idAviaoCheck){
				//se for igual nao faz nd. pois o ele sempre estara Proximo dele mesmo Exemplo 0 e 0  , 1 e 1...
			}else{
		
			xAviaoCheck = aviaoCeck.GetComponent<DadosAviao>().AviaoX;
			yAviaoCheck = aviaoCeck.GetComponent<DadosAviao>().AviaoY;
			dx = Mathf.Pow(xAviaoCheck - xAviao , 2);
			dy = Mathf.Pow(yAviaoCheck - yAviao, 2);
			distancia = Mathf.Sqrt(dx + dy);

			if(distancia < distAviao){
					distanciaEntreAvioes.Add();

				}
			}
			//fim SEGUNDO foreach
		}
		//fim PRIMEIRO foreach
	}

[/color]

Desde já fico agradecido…
Valeu.

Bom, por meio de tentativas já consegui resolver com esta linha

[color=red]
if(distancia < distAviao){
if(!distanciaEntreAvioes.Contains("ID " + idAviao + " Proximo a " + idAviaoCheck) && !distanciaEntreAvioes.Contains("ID " + idAviaoCheck + " Proximo a " + idAviao) ){
distanciaEntreAvioes.Add("ID " + idAviao + " Proximo a " + idAviaoCheck);
}
}
}
[/color]

só pra informar.
=D