The only ways to get gems are to:
- Purchase them
- Get them from the tutorial
- Be given them by friends
- Share completed goals on Facebook/Twitter
- Win Colosseum matches
- Win them at the racetrack
- Acquire them from Gemstone dragons
If you just started: At several points, the tutorial will give you gems and tell you to use them. Ignore the prompts, and you'll get to keep the gems.
There is no limit on how many gems you can receive from friends, but every player can only gift 3 gems per day (6 if they have the Dragonsai Gifting Tree). So generally you can get a maximum of 3/6 gems from friends daily - unless you can find someone willing to give you gems for nothing in return.
When you complete in-game objectives called "goals", most message pop-ups will have Facebook/Twitter sharing buttons. Use both to receive 2 extra gems. Some goals themselves also have a small gem reward attached to them.
The Colosseum will win you 0/2/5 gems per day. You can enter one dragon a day, and at most you'll get 5 gems per day back as a reward.
Winning the race gives you a spin of the prize wheel - rarely, you may win some gems. Entering the race is relatively inexpensive and frequently rewards gold, so entering hundreds of times per day is not out of the question, assuming you have enough time to devote.
Every month a rare dragon is available for breeding which matches the birthstone of the month. These dragons can only live on gemstone island. When upgraded to level 10, these dragons produce gems at a rate of 1/week. By default you can have at most 12 dragons on your gemstone island, 3 per island. As Shadur notes in the comments, you can also upgrade each section of the gemstone island for 25, then 50 gems, each upgrading allowing each "quarter" of the island to hold one more dragon. You can get 12 gems a week with a fully stocked, non-upgraded gemstone island, or up to 20 gems a week with a fully upgraded gemstone island. (Note it takes a whooping 300 gems to upgrade all island slots).
Note gems are mostly for extras; speeding up actions, upgrading certain buildings (the nursery) or buying special buildings (the extra breeding cave).
A Bloom Dragon can be bred using Storm + Lichen dragons or any combination involving the elements Plant, Cold and Lightning. Storm + Plant or Lichen + storm also works.
You'll know you have a Bloom Dragon if you get a breeding time of 13 hours. The egg will be rainbow colored.
Bloom dragons started appearing April 2nd and will stop being availible after April 30th. Breed your Bloom Dragons before then or you'll have to wait until next year.
If you breed two of them together you'll be able to breed new Bloom Dragons even after the event is over.
Best Answer
There's two problems here; the theoretical maximum and the humanly feasible maximum. For the theoretical max, check the "Food per hour" metric on the Treat Farms wiki page. It also shows you the cost per food; note that the longer the grow time, the less efficient the food/hour and food/money metrics get.
The cheapest foods actually produce the most food in the least time and for the least cost (an exception below). However, it's not humanly possible to sit at the game and harvest Dragonsnaps every 30 seconds.
Instead you should just plan your food growing based on how long you'll be away from your game. When you start out, you'll probably be playing actively and pick very quick-growing food. As time goes on you'll check the game less and prefer Pumpermellons for the 8 hour time; if you only check the game once every 8 hours, Pumpermellons are suddenly the most efficient.
Also remember to always build a new treat farm immediately when you can at level up; you can even buy the cheapest one and upgrade later. Since there's no build time, buy the cheapest one you can afford, as it still lets you farm more. Every level up, check and see if you can build another treat farm.
There's a late game exception however; once you upgrade your farms a second time to the Huge Treat Farm, you get very high-cost, short grow time treats. These foods all grow in an hour or less, and cost exactly 50 gold per food and give large volumes of food in very stort times. It's basically converting your money straight into food, bypassing (most) of the growing time problem. These are the least cost efficient, but once you have millions of Cash, you'll prefer it to manually growing all the time.