Attributes store data permanently. Their data is never "forgotten" - it can be used in all parts of your project and is downloadable in export files, reports, and so on. Attributes are structured properties that are tied to entities in the project. For example, the entity "Audience" might have attributes like "score", "health", "shopping list", or "friends". The entity "Team" might have attributes like "team_leader", "team_color", or "mascot".
Dynamic Values (also known as "Variables") are more advanced. They store data temporarily, only while processing the current trigger event. For example, you could use these Variables if you need to pull information out of an incoming message from the audience (or from an automated newsletter or an API) and use it in an outgoing message to the audience (or to yourself). You can also use Variables to perform calculations that span across trigger, condition, and action, or across multiple actions. Variables are not tied to entities.
Both Attributes and Variables can be used in Smartword Expressions.