1) Match weight and texture: So a light dish needs a light wine, and a rich dish a rich wine.
2) Match the intensity of flavor between the wine and food. One will have to take the lead, but the other should folow closely.
3) Either contrast the flavors of the food and wine, as with famous sweet and salty pairings, or allow the flavors to compliment each other as fruity, acidic Sangiovese does with tomaotes. This can work with textures as well, as when a sharp, acidic white helps to cut through the richness of a cream sauce.