I would suggest that you take each of the above View Engines, write a presentation, and see what works best for you. You may find that the choice of View Engine changes for different applications or even for different types of views.
If you are returning HTML to your client, perhaps an engine like Spark. However, if the end you are returning is XML or other markup (like JSON), then Spark will not be very useful. NHaml is also focused on XHTML generation.
See how you want to test your views, the set of skills of your engineers (both developers and testers), the level of support that you hope to get from your author Engine Engine (if you find errors, as you want, bug fixes) and whether your customer any preferences.
Basically - try a few, see what you like, use a mixture of them if you find that it makes sense.
Oh, and here is a good post listing 4 alternative engines ...
http://codebetter.com/blogs/jeffrey.palermo/archive/2008/01/27/mvccontrib-now-offers-four-4-alternative-view-engines-for-asp-net-mvc.aspx
... he mentions the XSLT engine, which might be suitable if you want to create XML.
Martin peck
source share