This is a more complicated question than was probably intended...Any makeup that is good for one person, may not be good for another. So much depends on your skin type, your skin care and makeup routine, your brushes or tools, and frankly, your overall skill.
That said, powder will give you a more matte finish (think Marilyn Monroe), unless it contains shimmer or glitter. Liquid or cream blush is going to give you a more dewy finish (think Jennifer Lopez), and fewer of these contain shimmer or glitter. Liquids or creams can tend to look more natural, just like you're beautifully flushed.
You can easily find good products at any price point, and there are some brands that are considerably more 'natural' than others (this is a very tricky connotation with cosmetics). Both will last throughout the day, if you're using a good primer and other complexion products. However, some liquid and cream blushes contain stains that will significantly extend their wear (and still come off easily at the end of the day).
Here are some of my favorites (from sephora.com):
Powder: Nars - Deep Throat or Dolce Vita; Tarte - Blushing Bride, Tipsy (they have the same colors as gel blushes, also awesome); Kat Von D - Essex, Love Song
Liquid/Cream: Hourglass - Sunset duo (also comes with bronzer); Urban Decay - Quickie; Stila - Lillium, Peony