Ethnic groups are based on cultural similarities and countries of origin. The concept of race refers to one of the three categories of race: Negroid, Caucasoid, or Mongoloid. I for one, wish there was no concept of race, but it is what we have to deal with unfortunately.
I agree that race is largely determined by physical characteristics while ethnicity is determined by culture. When we visited England, the majority of the people looked racially similar. However, there was a distinct difference between the culture of the North and the South. In some cases, it was immediately apparent once the person began to speak. The accent of those in from the far North is different from those of the South. Ethnicity might also be determined by a particular country as well. A person from the UK might fall into the same racial category as a person from the US but they are likely to have very different ethnic backgrounds.
Racial groups tend to be defined by skin color and other physical characteristics. Ethnic groups are often associated different nationalities. For many centuries, for example, Scots, Irish, Welsh, and English people all tended to be members of the same (white) racial group, but they had distinct ethnic identities, rooted in part in differences of language and culture. Today, of course, legal citizens of England might belong to any of a number of racial groups.
Races are differentiated based upon skin color, genetics, inherent diseases, etc. Ethnic groups may be the same race as other groups; however, they come from distinct countries and share customs and other cultural propensities. For instance, the Germans and the English are both Caucasian, but they differ greatly in culture and nationality.
I would have to support the definition provided by pohnpei. A person can "look" white. According to race, the person would be considered Caucasian. But, when examining their ethnicity, they can be European, American, or Swedish (for example).
A racial group is one that is distinguishable (to some degree) on the basis of physical appearance alone. An ethnic group is one that is distinguishable largely on cultural lines. For example, two people can both be "black" but can be of different ethnic groups is one is from the Dominican Republic and the other is from England.