I had looked into using unity iphone 1.0.1 in the past, but found that I was not able to get to GameKit in a practical way. I believe I had to use NSUserDefaults to pass data into and out of Unity. Is there an effective way to use GameKit in the new Unity iPhone? Or any documented way to do bluetooth or wifi?
With Unity Advanced you can pass data between Unity and Objective-C via native function calls, without going through PlayerPrefs. Unity itself supports networking through dot net, so you could use a simple Bonjour browser for match-making (Unity's sample for native function calls is, in fact, a Bonjour browser) and do all of the networking inside Unity scripts. Or you could integrate GameKit. I had trouble with GameKit bluetooth when I tried it, but that was around OS 3.0 or so, it's probably much improved by now.