A character is finished for about one session. After that they level, and the choices start again — smaller each time, but the same kind of choice.
Two systems, and the group uses one of them. Under the first, you earn Experience Points for what you overcome, and crossing a threshold raises your level. Under the second — milestone advancement — the DM simply says the party has levelled when the story reaches the right point.
Neither is more official than the other, and it is worth asking which one your table runs, because it changes what the party is rewarded for doing.
Every level gives you your class's feature for that level and another roll of your Hit Point Die added to your maximum. Three levels do more than that:
Your Proficiency Bonus also grows on a fixed schedule that has nothing to do with your class — the table is on Proficiency.
At 4th, 8th, 12th and 16th you take a feat. One of the feats available is Ability Score Improvement, which raises one ability by 2 or two abilities by 1 — so the familiar "+2 or a feat" decision is really "which feat", with the raw increase as one of the options. No ability can pass 20 this way.
Feats come in four kinds, and which are open to you depends on when you are choosing:
Taking the flat +2 is never wrong, particularly if it moves your primary ability to an even number or gets you to 20. But a feat is where a character stops being a well-built example of their class and starts being specifically themselves, and by 8th level most characters can afford one.
Some classes hand out Expertise as they level, which doubles your proficiency bonus for one skill you are already proficient in. You cannot take it twice in the same skill, and it does nothing for a skill you have no proficiency in — so it rewards leaning into what your character is already best at rather than patching what they are not.