A is most likely right because a lot modern European countries get their borders from cultural and linguistic boundaries after old empires like Austria-Hungary, Russia, and Germany split up. Poland, Czechoslovakia, and Slovenia, just to name a few, were ethnic groups without countries before WW1.
B: isn't true, just look at eastern Europe in the 17th century, tons of ethnic groups living in one country. Even with more immigration to the Europe, most immigrants assimilate into European cultures.
C: Although geography can influence political borders to varying degrees, European nations don't strictly follow physical geographic features to my knowledge. There are a lot of borders based off of rivers you can see have stayed the same despite the rivers moving (Serbia and Croatia's border is a prime example)
D: I don't know what 'define' means in this context, but if it means religion and geography are the main reasons Europe get's their borders is just flat out wrong. We already talked about geography, but religion doesn't effect European borders since most European countries are christians and are secular. The only example I can think off the top of my head of religion affecting borders is in Ireland when they separated the protestant north from the rest of the island which was catholic.