Price
Charcoal grills have it over gas grills on price. A charcoal grill is a very simple machine, consisting of little more than a round metal container on legs with a grill grate in it, whereas gas grills incorporate burners, piezoelectric starters and adjustable controls. Gas units run from about $300 to $4,000, with many around $1,000, plus the price of a propane tank and gas, as of publication in April 2012. You'll find many choices of charcoal grills well under $100, as of April 2012, though you can spend much more if you want all the bells and whistles.
Flavor
Gas is clean burning, while charcoal smokes a bit more. This difference subtly affects the flavor. Food cooked over a charcoal grill often has a smoky flavor, whereas gas-grilled food has only its own natural flavor. If you use too much lighter fluid on a charcoal grill and don't leave enough time for the fluid to burn off, meat can pick up a lighter-fluid flavor.
Setup
Charcoal requires quite a bit more setup and take-down. To get it going, you have to stack the coals in a pile, spray lighter fluid on them, wait for it to soak in, light them and wait for them to ash over, usually about 30 minutes. Gas grills also take time to heat, but they require less work and tend to be quicker. Take-down is an ordeal on a charcoal grill. You have to wait for the coals to burn out in a charcoal grill, then clean them out of the bottom. In a gas grill, you can simply turn off the grill, let it cool down and wipe it clean with a cloth.
Heat
With a lot of coals stacked close to the cooking surface, you can achieve a very high cooking temperature on a charcoal grill. This high heat can give steak and lamb a nice, quick sear, while leaving it pink on the inside. Some charcoal grills come with a crank that allows you to raise and lower the charcoal to control the heat. Although gas grills do not get as hot, they have advantages in heat control. They have adjustable dials that control the heat fairly precisely. Many gas grills have multiple burners, so you can cook your meats on high heat and your veggies on low heat at the same time, while keeping finished foods warm. On charcoal, you can get the same effect to some degree by placing the charcoal unevenly on one side of the grill, but you have much less control and can't adjust the heat once you start grilling.