This is too long to fit in a comment on Oliver_C's answer, so it's getting its own answer. Let's assume Professor Libbrecht's analysis is correct and there are 10158 possible snowflake configurations. Roughly 1023 snow crystals fall on Earth per year.
If 1023 snow flakes fall per year, then by the pigeonhole principle two similar flakes must fall by the time the Earth reaches the age 10158/1023 = 10135 years, which isn't going to happen any time soon.
With that said...
Now lets assume that each one of the 10158 possible snowflake configurations is equiprobable (I am not sure if this is a reasonable assumption, but let's proceed). If there are n possible types of snowflake and i-1 < n snowflakes have fallen, the probability that the i th snowflake is different is (n - (i - 1))/n. Therefore, if k snowflakes have fallen, then the probability that they are all different is the product of (n - (i - 1))/n for i ranging from 1 to k. Since n and k are positive, this simplifies to (-1)k n-k (-n)k , where "(x)n" denotes the Pochhammer symbol. Plugging in 10158 for n and 1023t for k, we arrive at
(-1)1023t (10158)-1023t (-10158)1023t .
This is the probability that t years of snowfall of 1023 flakes/year drawn uniformly from a set of 10158 possible flake configurations has produced no duplicate flakes. Even plugging in t = 1 produces an underflow error on all of the numerical analysis systems I've used (is anyone else able to calculate the result?), which should tell you that the probability of all flakes being different even in a single year is very low. The age of the Earth is roughly 4.54 billion years.
Update:
So, after thinking about this for a while, I realized that this is all just an instance of the Birthday Problem: The problem is exactly the same as finding the probability that at least two people share a birthday in a room full of 4.54x109x1023 people when there are 10158 possible birthdays. There are well known approximations for calculating this probability, which result in a value incredibly close to zero. The derivation is a bit long and math-laden, so I posted it on my website if you are interested. Therefore, if the configurations of snowflakes are uniformly distributed, then there is an extremely low probability that any two snowflakes have been similar in the history of the Earth.
But wait! Do snowflakes really occur according to a uniform distribution? I'd imagine that some configurations are more rare than others. Like many other natural phenomena, I might guess that the distribution of configurations is closer to a Zipfian (a.k.a. "Power Law") distribution. Using this distribution unfortunately forces us to abandon the handy approximation that we used in the uniform case; we'll have to derive the probability from scratch. The probability that among n snowflakes at least two are the same is this nasty expression:
1 - 1/n! sum_{x1=1}^{10158} sum_{x2=x1+1}^{10158} sum_{x3=x2+1}^{10158} ... sum_{xn=xn-1+1}^{10158} product_{i=1}^n xi-2 / sum_{j=1}^k j-2.
(For a prettier representation in MathJax, along with additional steps in the derivation, see my website.)
This expression can be bounded below by 1 - 10158 / n! ζ(2)n. Setting n = 1023, this lower bound is extremely close to 1. Therefore, if the snowflakes are configured according to a Zipfian distribution, there is a very high probability that at least two snowflakes are similar in a single year! The same applies if the snowflakes are binomially distributed (that derivation is also on my website).