Listed below should be all reasons why a Pokemon didn't evolve in a situation where you believe that it should. Make sure you double check that you have met the requirements necessary to evolve the Pokemon in question.
Most common problems
Everstone: If your Pokemon is holding an Everstone, then it will not evolve through level-up or trade. Check that your Pokemon is not holding an Everstone.
Day Care or Pokejob: Even though Pokemon can level up at the Day Care and in Pokejobs, they cannot evolve there. You need to take it out and level it up normally. (Your Pokemon will evolve next time you level it up even if it has passed the required level.)
Caught above evolution level: Some Pokemon appear in the wild at a level above their evolution level. To evolve a Pokemon like this, level it up.
Friendship: Some Pokemon will only evolve upon level up if their friendship is high enough (list of them). Use this article to help you find ways of boosting friendship and learn how to evaluate your Pokemon's friendship. Even if your Pokemon is level 50 and 'definitely should have evolved by now!' the answer is you need to raise its friendship more. Note that in Gen 6 and 7 (except LGP/E), friendship is NOT the same as affection.
Incorrect use of item: Items are required to evolve some Pokemon. If your Pokemon is one of them, be careful you are using the item correctly. Some, like Water Stones and Sun Stones, only work if you go into your bag, find the item and select "use". Others require you to equip the item onto your Pokemon, then level it up at a certain time of day. Others require you to trade the Pokemon while it holds the item. Research what category your Pokemon falls into.
Problem Pokemon
Sylveon: In Gen 6 to 7, Sylveon evolves using affection. As mentioned above, affection is NOT the same as friendship. To raise affection, pet your Eevee and feed it using Pokemon-Amie in Gen 6 or Pokemon Refresh in Gen 7. High friendship will only work in Gen 8+. Remember that Eevee must also know a Fairy-type move to evolve into Sylveon.
Malamar: Inkay will evolve if you level it up while holding your console upside down. If you're playing on the Switch, attach your Joycons to the main unit, disconnect other controllers and try again in handheld mode.
Goodra: Sliggoo evolves into Goodra if it is raining in the overworld. If you force rain using Drizzle or Rain Dance, Sliggoo will not evolve. Research an area in your game where it always rains, or it is likely to rain.
Runerigus: To evolve Galarian Yamask, you must allow it to take at least 49 damage from direct attacks, without fainting, then walk underneath the stone arch in the Dusty Bowl in the Wild Area. If you are having trouble, watch this video.
Mantine: Mantyke will evolve if there is a Remoraid in your party and you level up Mantyke.
Pangoro: Pancham will evolve if there is a Dark-type Pokemon in your party and you level up Pancham.
Milotic: In games where contests are present, Feebas evolves into Milotic when it levels up if its Beauty condition is 170 or above. See here for help raising Feebas's Beauty, and see here for important directions if you are playing a Gen 4 game. From Gen 5 onward, Feebas can also evolve when traded holding a Prism Scale.
Other issues
Required level: Most Pokemon will evolve only after they reach a certain level. Make sure you double-check what level this is. If your Pokemon's level is higher than the required level, then it will evolve if you level it up again. If your Pokemon is level 100 and you're playing Gen 8 onwards, you can use a Rare Candy to evolve it.
Knocked out: In Gen 1 to 5, Pokemon will not evolve through level-up if they are knocked out. Make sure your Pokemon is not knocked out, then level it up again.
Time of day: Some Pokemon will only evolve if levelled up during a certain time of the day (list of them). Check here for the times of day in Pokemon for evolution. Make sure to level up your Pokemon at the right time of day and up to (or past) the correct level, if a level requirement applies.
Changed system time: Changing your system time disables time-based events (including time-based evolution) for 24 hours. Do not change the system time to accelerate evolution.
Pressing B: If you've met all of the requirements for a Pokemon to evolve and it starts evolving, but you, out of pure excitement, start mashing your face into the system so hard that your teeth come out and one happens to hit the B button (it happened to my cousin Mikey, he said so), then your Pokemon will stop evolving.
Required move: Some Pokemon require having a certain move in their moveset and being leveled up in order to evolve (list of them). Make sure that the Pokemon has the correct move, then level it up.
Required location: Some Pokemon only evolve if they are levelled up in a certain location (list of them). The most common of these locations are areas with a magnetic field (list of them). The other locations are the Moss Rock, Ice Rock, and Mount Lanakila. If your Pokemon requires the Moss Rock or Ice Rock, make sure you are very close to the rock, and level up your Pokemon.
Gender: Combee and Salandit both must be female in order to evolve.
Incorrect form: Cosplay, Hat, and Starter Pikachu, Kantonian Farfetch'd and Mr. Mime, Starter Eevee, Spiky-Eared Pichu, Johtonian Corsola, Hoennian Linoone, and Eternal Flower Floette can't evolve.
Traded into PC Box: If you are playing an older Pokemon game and you trade your Pokemon directly into the PC, it will not evolve. Try trading it again.
Changed Evolution Method: Some Pokémon have changed evolution methods throughout games or generations. In Legends: Arceus, Pokémon that used to evolve when traded while holding a specific item can be evolved without trading by using their evolution item from the player's satchel.
If this answer has missed anything, it's very likely that it is mentioned in this Bulbapedia article. If you still cannot evolve your Pokemon, then it's possible you're playing a fan game or a hacked game where the requirements for evolution are changed.
Sources: This, this, this, this, this, this, and this.