The best place to start when you are pairing food and wine is to think about the structural elements of both the food and wines. These elements are: sweetness, acidity, bitterness, umami, chilli heat and fat.
We have listed these elements in foods and how you can add wines with similar or contrasting elements to help create harmony in your matches.
Sweet foods can overpower dry wines, white or red, making them appear acidic, neutral or bitter. In order to reduce this effect you should pair sweet foods with sweet wines.
Acidic foods, like fresh citrus, tomatoes or salads laden with vinaigrettes, will overpower the acidity in a wine making them appear flabby or less acidic than they were. In order to reduce this effect you should pair acidic foods with wines that have a higher acidity such as Champagne, Riesling or Sauvignon Blanc.
Acidity is a key element in creating balance in a dish or a food-and-wine match. If the foods are going to reduce the acidity in the wines then you need to add your own bit of acidity by bringing a more acidic wine to the table. It is the same principle behind adding lemon juice to seafood dishes, as seafood tends to have quite low natural acidity.
If a food is high in bitterness then it will make the wine appear bitter, or it will increase the perception of bitterness (tannins) in the wine. In order to reduce this effect you should pair bitter foods with wines that are not lean with high acid. Rather choose wines with some sweetness, fruit or viscosity.
Foods that are highly savoury, like mushrooms, will increase the bitterness or acidic perception we have in wines. In order to reduce this effect you should pair umami rich foods with wines that are fruity and do not have medium-high tannins.
Often foods that are more savoury are best matched with white wines like Chardonnay or Soave as these do not big tannins but have lots of fruity flavours.
Chilli heat is similar to umami-rich foods. They will increase the bitterness or acidic perception as well as the alcoholic burn we have in wines. In order to reduce this effect you should pair chilli heat rich foods with wines that are fruity and/or have higher sweetness levels.
Wines that are off-dry like many Gewürztraminers or Rieslings could work best with chilli foods like a curry as they will be both a bit sweet but also very fruity. If you aren't a white wine drinker then you could consider red wines that have lower tannins such as a Pinot Noir or Gamay Noir.
Foods that are high in fat will make the wines feel flabby and less fruity. In order to reduce this effect you should pair fatty foods with wines that have high acidity. This is similar to the rule of adding in acidity (in the form of citrus) to seafood to help to cut down the perception of fattiness.
These suggestions (there are no rules that apply to everyone) will help you to think about how to create pairings. It often isn't helpful to think about 'red wine and red meat' or 'white wine and fish' because it is actually the structural elements of the wine and food that need to be balanced. It is the acidity in white wines that works well by cutting through the fattiness of a piece of fish but you could get that acidity in a Pinot Noir.