I think the main idea is that they punish bad positioning of squishy carries. A mobile mage can kite and go all-in just as well during the laning phase (assuming neither one has gained too much momentum over each other). In a teamfight, a mage typically kites and deals heavy damage, occasionally deleting squishies but often getting it soaked by tanks.
An assassin finds a squishy that's caught out, and punishes them, thus removing a substantial amount of the enemy's damage in the ensuing teamfight. They go in, get out, and wait for the next opportunity.
The best counter, imo, is counterplay. You either remove the assassin's effectiveness (certain items, such as silver sash, is amazing) or send in the bruiser. A bruiser is an assassin's worst nightmare. A little cc, enough damage to bring them down to half, and that Zed runs... only to be charmed by the waiting Ahri in the river bush.
Assassins delete squishies, but in order to do so they might have to leave the backline away from the bruiser/tank's frontline, meaning you can give them a taste of their own medicine.
Remember, just my thoughts.