Another aspect of a healthy mash and flavorful beer is water chemistry.
In general you want to hold your Mash pH between 5.2 - 5.6. This is the zone in which your mash enzymes are most effective at starch conversion. It also helps produce a great flavor that helps the grain pop on your tongue in the final product. Using acids (lactic, citric or phosphoric) can help you achieve this goal if your source water is alkaline. It's recommended that you purchase a pH meter to monitor your mash water.
A good mash should reach it's target pH in the first 15 minutes, so hold off on your adjustments till then. Also, changing your source water can help achieve the desired pH. Cutting your water with reverse osmosis or distilled water can help offset the alkalinity in your water supply.
You also want to make sure Calcium levels are 50 mg/L minimum. The will help with beer clarity and help beer stone (calcium oxalate) precipitate out, keeping it from forming in your final product's storage vessels and inside of you. Calcium Chloride and/or Gypsum (Calcium Sulfate) can both assist in this endeavor.
These salts also help you manipulate other "flavor ions" in your beer. A brief description of some key ones are below:
Chloride (Cl-): enhances sweetness and mouthfeel
Sulfate (SO4): enhances bitterness/dryness
Note: You will want to limit Calcium content in lagers as elevated levels can adversely influence those strains of yeast.