WOW, Did i do something wrong with my test ?
Scene 1 :
1000 game objects with a script that print “Hello World” in their OnGui method.
Avg fps : 60; Time : est 18ms
Scene 2 :
A single script that has an OnGUI method that invokes a static .net event (ondraw).
1000 game objects with a script listen to said event and print “hello world”
Avg fps : 200; Time : est 4 ms
:shock:
:shock:
766657–28022–$Events Test.rar (901 KB)
I repeated the test for the Update method.
I have similar results :
Regular
4-10k fps, .5ms
Central
4-10k fps, .01ms
P.S.
Unity takes a while to load with more then 2k instances.
You loose all profiler statistics.
… The profiler raises an interesting question. Is this slowdown a result of using the profiler ?
you should better display fps count on screen through script and not watch it in profile as profiler sometimes shows unreal values
ongui is called several times per frame to decide where clicks occur what elements should be highlighted etc. so it is slow and not intended for beeing called by thousands of game objects. usually you should have all your gui stuff handeled in ONE script and so have only one ongui function. if there are 10 its still ok but thousands is not relevant in any practical case (at least for me).
the gui is beeing reworked currently and the new system is expected to be released with unity 3.5 (this year?).
ongui is called once per event actually.
On top of that all standard event things are called through a send message alike approach (likely reflection invoke), not through event handlers at all. Keep in mind that unitys main language is UnityScript which does not even support event handlers 
And the new gui system might or might not happen in 3.5
Its hoped that it happens then but UT warned multiple times that it might not make it into that version, already at unite where it couldn’t be presented cause it was not ready
Yeah on my car ride I reached a similar conclusion.
After turning off the profiler, and using the onscreen stats. The difference went away.
I used a thousand objects so that the small change, compounded, may be observable.