Well, that doesn't really say anything about
why it's this way. In this case, it's helpful to look at what sort of operations return NaN. Offhand, I know of 0.0/0.0, the square root of a negative number, the logarithm of a negative number, and various inverse trigonometric functions such as arcsin(2). If those operations are all NaN, should they be equal to each other? That wouldn't make much sense, I think.
[I belatedly saw that this was posted in C#, and I posted
Java code. But the basic point remains the same, I think.]