The old rule “white wine with fish; red wine with meat” is based on matching body (the weight of the wine in the mouth) and colour, The adage dates from the days when many white wines were light in body and whitish in colour (like fish), and many red wines were weighty and, obviously, red (like meat). It is, however, the body and components of the wine- not its colour- that are important in matching wine with food.
Today many red wines, such as Oregon pinot noire and northern Italian merlots, are far lighter in body than, for example, barrel-fermented and barrel-aged California and Australian chardonnays. In the 1980s many of realised this (or at least sensed it unconsciously), abandoned the old rule, and began drinking red wine with fish and white wine with meat. By mid-1980s top American steak houses were selling almost as much chardonnay as cabernet sauvignon.