Os assinantes do evento são chamados em ordem de inscrição?

É seguro assumir que os assinantes do evento são chamados em ordem de inscrição?
Exemplo:

void One(object sender, EventArgs e) {}
void Two(object sender, EventArgs e) {}

event EventHandler foo;

foo += One;
foo += Two;

One () sempre é chamado antes de Two () quando o evento é disparado?

Editar:
É claro que você não deveria confiar nisso, eu estava pensando. A idéia era que os delegados multicast são semelhantes ao padrão COMMAND. Então eu só estava pensando. Geralmente você usaria uma coleção que mantém a ordem dos COMMANDs para que você possa desfazer / refazer / o que for.

questionAnswers(5)

yourAnswerToTheQuestion