If you don't have any money in your account and are trying to build a
bankroll, then yes, freerolls are worth playing. You say that you spent four hours playing a freeroll to win $20. If you didn't have any money in your account, then you would probably consider it time well spent. Even if you had let's say $40 in your account, then that extra $20 would be very welcome, and again it was probably worth the time spent to earn it. On the other hand, if you are bankrolled for $50NL cash games, then playing freerolls might not be worth the time and effort. But as others have pointed out above, playing freerolls might be a good way to keep your skills sharp. Then again, the level play in a lot of freerolls might bring your level of play down, unless of course we're talking about the CardsChat freerolls, which are also a good opportunity to rub elbows, figuratively speaking, with your fellow forum members.