I like to think of "elo hell" as this awkward middle ground that's just above your skill tier, but much lower than your potential tier (where you could end up after dedication and self-improvement).
Let's take MadMan's example. Let's assume you're Silver 1 and you're constantly matched with Silver 4 players. Let's also assume that you all belong in your respective tiers. You want to improve and climb, but you're finding it really hard. Why? Because while you may not play at a gold level yet, it's drastically harder to improve your own gameplay when you're playing in an elo lower than your own because chances are there aren't very many players who will punish your mistakes the way that a gold 5+ player would.
You don't have to do anything special to do well vs a lower elo player, that's why you're where you are. But at the same time, you're not high enough skill level to actively carry your team, much less if you're on a team that refuses to work together or makes the game unnecessarily harder (int, afk, highly toxic to the point where they tilt others, etc). But how can you improve when you're only going against players who are worse than you?"
That's what elo hell is. It's being "too good" to get a meaningful challenge from your games, but not good enough to compensate for the disadvantages you're queued into (high death ally lanes, int, afk, etc).
That isn't to say that you can't improve in this "rut zone" so to speak. You can work on cs'ing, roaming, grouping, objective control, managing your own lane (a bit harder bot lane as solo), etc. But at the same time, you won't be able to improve in the same capacity as if you were constantly playing against people at your own skill level or higher.
Speaking personally, the largest magnitude of improvement to my gameplay was in late season 3 when I started Ranked and early season 4 when I took it seriously. I climbed straight from bronze to gold and maintained a relatively nice win rate. Most games were either against other golds or plats lanes where I was actively punished for mistakes like overextending or not itemizing against the enemy comp to the point where I took it to heart, and learned from my mistakes. From there I spent the next two and half seasons playing mostly normals with my bronze and silver friends. Had good times, but also racked up a bunch of terrible habits because there was no one to punish me. I could do these things and get away with them, so I eventually starting doing them more often. Fast forward to season 7 where they reintroduced solo/duo Q and I decided I wanted to start actively climbing again but it feels almost impossible because of the awkward area I'm in. I go 8-2 in placements, place Silver 3. Dominate my games and skip S2 going straight to Silver 1 after series. From there it was hell. My games leading up to promos are mildly engaging at best, a dirt stomp (easy) at worse. Soon as I get into promos the teams go from low-high silver to gold/plat/diamond and I'm heavily punished for every little move to the point where I get flat out shitted on. I 0-3 my placements, and the games go right back to being really easy until I get to promos and lose them again. Some were to afk/ints, but the majority were just me flat out sucking in comparison. My winrate tanks from 87*-90% to like 51-67% and my MMR tanks to a point of stagnation (into the rut zone), and I just kinda shoot craps until I'm lucky enough to break into gold where I'm actively challenged enough to begin improving at a decent pace again. I finally hit gold in Flex (cause I wanted the double Gold +rewards), and now I'm going through the exact same thing in Solo/Duo.
It feels like shit from start to finish. At some point I was Gold 1 in plat promos (games 4 and 5 both had at least one afk), but now I'm struggling through Silver 1, wondering if I was ever really better than this.
EDITED: for typos