Welcome to English Forums!
Don't feel that you're alone in having this difficulty. The
difference between abstract and concrete nouns is not always easy to
determine. The reason is that the distinction is over-simplified,
and that it is made to seem that it is a property of the nouns
themselves, whereas, in reality, it is a property of the entities in
the real world that the nouns refer to.
Many linguists classify nouns into three types:
first-order, second-order, and third-order nouns. Only the
first-order nouns are called "concrete" in the simpler, traditional
system of concrete and abstract. The second- and third-order
nouns are called "abstract".
First-order nouns designate individual entities that exist in
three-dimensional space that are publicly observable: people,
animals, physical objects. Second-order nouns designate events
and processes that exist in time:
weather, storm, sunset. Third-order nouns designate entities that are not observable. They are not located either in space or time:
faith, happiness, belief.
Note that the classification can change depending on how the noun is
used, that is, depending on what it refers to in the real world. When
money
refers to the physical coins and bills, it is a first-order noun
("concrete"); when it refers to the idea of financial wealth, it is a
third-order noun ("abstract").
There's some money on the table. (concrete)
There's a lot of money in his bank account. (abstract)
In short, any noun that refers to an observable physical entity is "concrete"; everything else is "abstract". Thus,
weather is considered an abstract noun.
CJ
______
Some of the ideas in this post are a summary of material from
Semantics by John Lyons (Section 11.3).