You're always looking for balance, both within the wine itself, but also with the food you're serving with it. Some guidelines to think about, though any combination is possible:Steamed halibut: Something mellow, herby, and acidic, like a New Zealand Sauvignon Blanc, or a white from the Loire Valley in France.
Spaghetti and meatballs: A bigger wine, with acidity, herbs, and brighter fruit to balance out the meat. Here, Chianti classico (from Tuscany) would be perfect, or an old-style Rioja (from Spain).
Indian take-out: Look for a slightly sweet, low-alcohol wine, one that'll give the palate some relief. German, Australian, or New York Riesling would work, or California Viognier or Austrian Gewürztraminer.
Enchiladas: Depending on the level of spice, either go sweeter, like you would for Indian food, or think mellow white, dry rosé with backbone, or spicy red: New World Chardonnay, a Spanish or French rosé, or South American Malbec.
Seared salmon: Either an assertive, fruity white or a mellow red would work here: California Chardonnay, whites from the Rhône valley (in France), or Pinot Noir (called Burgundy if it's from France).
Steak and potatoes: The sky's the limit here -- you want big, bold, fruity, and jammy: American red Zinfandel or Cabernet Sauvignon, Australian Shiraz, or Bordeaux (from France).