First, a disclaimer: I believe that attachment to a specific technology is overrated. Having experience in different technologies gives you more insight and broader knowledge and, often, allows you to come with different approach to a problem than you would otherwise (as in Law of the instrument).
Having said that, I don't consider you have only one viable option:
You may want to stay to:
- see how you like the new technology
- learn things that broaden your views
- learn completely different class of projects (C# won't be anything close to iPhone apps)
- get yourself out of your comfort zone
- grow your career within the ranks of your current organization (if it is even a case)
You may want to go to look for other mobile development job to:
- keep honing your iPhone development skills
- stay focused on a single technology so you eventually become awesome in this
- exploit your current skills in most productive way
- are convinced that mobile development is the thing to do for you
- find a better job considering your current skill set (if it is even a case)
All in all, the decision should be mostly driven by how you picture career in a couple years of advance.
Note, that you can pretty safely stay for a while to see how it goes and then eventually leave if you don't like it. What more, if you work for healthy company you might be able to state that openly. In such case, again it is possible, that if you don't like the new role you might be offered a switch back to the current one. It is however about how your org is functioning and what kind of relations you have with your bosses.