Make sure you read that link carefully! It states that GetComponent is "probably at least as slow as" SendMessage. The performance gain comes from caching the reference to the target (i.e. calling GetComponent once in Start()). e.g. (C#)
private EnemyScript enemy = null;
void Start()
{
enemy = GetComponent(typeof(EnemyScript)) as EnemyScript;
}
void DoStuff()
{
enemy.ApplyDamage( 20 );
}