We used it in the large corporation where I work. We didn't plan on it from the start of the project but it just worked out that way.
We had an internal project that we developed in .NET, once we got into UAT, the business owner wanted to open the app up to some customers as well as the internal staff. The majority of our external (DMZ) servers are Linux based and the Windows servers that are in the DMZ weren't a good fit (too close to capacity). Instead of buying new hardware someone suggested running the app on Mono. We spent a couple of days doing our own testing and then released the app to QA, then UAT. We had no issues.
If we had been given the requirement at the start of the project, we may not have chosen to write it in .NET, but this was one nice outcome to a very, very late requirement change. Now we're pretty confident that if it came up again we could successfully deploy to Mono (although I would think eventually we'd have to tweak some code, I think we just got lucky).