Two issues that should not be blamed for each others causes of instability:
1. Reaching the maximum number of networked edicts a server can handle, or the 'entity limit'.
TF2 server can track 2048 things at a time. Things are player models, cosmetics, weapons, projectiles and dynamic brush, point and prop entities. In any typical 24-player game of TF2, before you take the map's entities in to consideration you're going to have an average number of edicts in use; a factor the map maker needs to consider when building their map. Snowplow uses a lot of edicts because Payload maps have a lot of path_track entities which the cart follows, and it's a large map. On a 32 player server running the map there is a good chance the server will crash.
2. Excessive amount of stuff on the screen.
The more brush faces and models the player's game renders, the slower their framerate will be. In extreme circumstances, at some point the game will probably quit with a memory error.
3. The hidden category! Doing dumb shit in your map.
TF2's engine is like walking your non-tech mum through fixing problems with her computer over the phone. If you get ahead of her and give her more things to deal with than she can handle, she will get completely confused and just give up, asking you if you can come and do it for her. It's about feeding her a steady and small amount of stuff to avoid going over her limits of comprehension.
Let's say you have three or more different-coloured lights hitting multiple faces and you want to turn them all on and off individually. NOPE!
Let's say you want to put an env_glow and a point_tesla inside the bounds of a prop_dynamic. NOPE!
Let's say you like to make your own func_doors but you like to sticker them with info_decal. NOPE!
Follow the Stone & Parker rule and KISS - Keep It Simple, Stupid.