The word "variable" is a vague term in the field of statistics. Too vague to be regarded as synonymous with any of the other terms you listed. You're more likely to see that used as an adjective rather than a noun. As for the other terms, they all refer to the same thing. Namely, the data which is usually denoted by X. They can all be used in just about any regression context (ANOVA included).
It's also worth noting that the usage frequency of these terms often depends on the context. "Independent variable" and "explanatory variable" are used to emphasize different aspects of X - often in introductory settings. X is certainly intended to explain Y. However, if X is helpful in prediction, it will not be independent of Y. Instead, the practitioner typically would hope that X and Y "covary." That's why X is often referred to as a covariate. So, why then is X called an independent variable? In many problems, X can be chosen (or sampled, or collected) according to any means. X might be chosen through stratified sampling or perhaps just data collector's whim. In either case, we can expect (in some sense) to make the same inference regarding the prediction of Y.
Predictor and covariate are better and more general-purpose terms to refer to X. They're also shorter and equally descriptive. "Regressor" is another good synonym. And "feature" is yet another term which is typically used in Machine Learning contexts but means the exact same thing. Lastly, "factors" or "factor-variables" are specific types of predictors which are often used in ANOVA models. The specification for factors is that they must take on one of a set number of "levels" or categories.