Over the weekend I was playing a ranked game where my team wanted me to go mid. I didn't know who I was going to be up against and took Karthus since he doesn't really beat anyone anyway. He just wants to survive to the team fight stage and win there. I haven't played Karthus since season 3 started patching a couple months ago when I would take either exhaust if the enemy mid was melee or heal if they were ranged. I ended up facing off with Ziggs so I took heal. As time was expiring I suddenly remembered that barrier was added to the summoner's rift map and wondered if I should have taken that instead, but it was too late to really think about it. But I do want to know which I should have taken, so it's time to think about it now.
Barrier works by giving you a 2 second damage shield. Heal works by healing you and all nearby allies. Which is better than the other is going to depend on a few factors: the comparative size of the shield to the heal, the cooldown difference between the two abilities, if you can expect to take enough damage to use the whole shield in 2 seconds, and how relevant the heal will be on your allies. I don't know the numerical differences right now and I thought it might be informative to think about where the tipping points might be before looking them up.
First off, think about how relevant the splash healing is going to be. The S3 patch changed heal so it heals everyone it hits for the same amount. (It used to splash heal for less than the main heal.) This makes it so the heal spell is pretty good for someone who isn't likely to be the primary target in a team fight. It lets a support character use their summoner spell to help keep a damage dealing ally alive. On the other hand if it would be optimal for the enemy team to focus you down then you'd want whichever one gives you the biggest personal healing. Even if you don't get targeted your team is probably better off if you let your ally die while killing the enemies yourself than if you worried about trying to position yourself to get off a useful heal. The enemies are already making a mistake by not targeting you; take advantage of it by killing them! In the middle of those two extremes lie people who will care about the relative sizes. Karthus in particular is frequently focused first and wants to be in the enemy lines, not with his own team. These are strikes against heal.
Next, 2 seconds is almost certainly long enough to use the full shield amount. Maybe not at the highest of levels when people have the reaction time to target someone else when the barrier goes up but at my level of play there's no way the enemies are going to be good enough to switch away. If I'm taking damage already then I can reliably count on continuing to take damage for the next 2 seconds. Against Ziggs in particular you can see his ult coming as it has a long travel time. You can guarantee a good barrier against him.
Does cooldown matter? If it's a small difference then I don't think it does no matter which way it goes. If either has a longer cooldown than flash then it starts becoming relevant, especially for Karthus since he really wants to have his defensive ability up when he flashes in to the middle of an erupting team fight.
Now, what about the different sizes? If heal is bigger then it's no contest at all. Splash healing an ally and the complete removal of shield expiring risk makes equal sizes tilt heavily in heals favour as well. Down at 50% of the barrier it's certainly no contest the other way for anyone who can realistically expect to get hit early in a fight. My feeling here is that even at 80% of the barrier I'd rather have barrier on any carries. 90% is big enough that the splash healing is likely to be more relevant than the little bit extra on yourself.
What are the real numbers?
Heal - 85 + 15 per level healing, 300 second cooldown
Barrier - 95 + 20 per level shield, 210 second cooldown
Flash - 300 second cooldown
If you bother putting the points into the respective masteries you can get an extra 5 per level on the heal, an extra 20 flat on the barrier, or 15 seconds off the cooldown of flash.
So without the masteries heal is the same cooldown as flash and heals for 87%-78% of a barrier depending on current character level. With the masteries flash has a shorter cooldown but the heal is for 78%-94%, depending on character level.
Huh. The mastery really makes a big difference for heal, not so much for barrier. Without masteries I feel like barrier is probably the right choice. If I have the point to put into the defense tree then heal seems pretty good. The cooldown might become an issue if I also have the flash mastery but since they're in different trees and I'm probably putting 21 points in the third tree I won't likely have both of them anyway.