Gambling has been called immoral by some people, and I agree. The reason by gambling is immoral is because it fosters entitlement. It fosters a belief that people should be able to get something without working for it. Immoral activities such as gambling do erode society and should be illegal to protect society at large from its ills.
What people do with their own money is up to them. Gambling is not an immoral hobby, it is just a fun way to spend some time and money with the chance of earning back some extra cash. Making it illegal would only lead to a black market of gambling companies that could be potentially dangerous due to lack of regulation and oversight.
Gambling is a personal problem or, at the most, a family one. It is not society's place to punish personal immorality, as long as this does not negatively affect others. While a murderer takes away someone else's right to live and should be punished, the gambler is only playing with his own life. Although this is not a good idea, he has the right to do so.
Like alcohol and drugs, gambling can be addicted. When consumed in moderate quantities, it is not harmful or immoral. Those who become addicted to gambling, however, may be inclined to do things deemed immoral, but it is not necessarily because they are immoral. It is because they have a disease that leads them to do things they wouldn't ordinarily do in order to feed the desire to keep gambling.