In my personal opinion it's Silver, not necessarily because it's the best one, but mainly because of personal experiences with it. The second generation was the newest one when Pokemon was at its peak here, so obviously it was the second generation games which most people played. And we played it for hours on end, every day after school, although people were much more interested in the third generation games when they came out, me included, however I lost my Ruby shortly after I completed the game, and went back to my Silver. That lead to a whole lot of hours of gameplay, and a whole lot of memories which is why it'll forever be my favourite Pokemon game ;')