As I said, I do think that using the Random class is the preferable option, but I don't think your criticism of Randomize/Rnd is valid. You're only supposed to call Randomize once in your program. Calling Randomize repeatedly is like creating new Random objects over and over. You would just create a single Random object and call Next repeatedly, which is equivalent to calling Randomize once and then Rnd repeatedly. I used to use Randomize/Rnd before I was aware of the Random class and I just called Randomize once in the Load event handler of my main form. No issues at all.