I am very partial to saltarelle. It supports c# 5.0 constructs like async, c# 2.0 constructs like generics, and everything in between. It has a full suite of tests and relatively active. I have a lot of full projects implemented in it from 60fps canvas games to just normal sites. If anyone is interested in seeing some stuff, or just chatting about it, let me know.
Saltarelle is great; just worth making the clear distinction: Saltarelle is a C# compiler, JSIL is a .NET translator.
The distinction matters for cases where you want to use huge piles of existing .NET code, sometimes written in other languages. VB.net and F# already have partial functionality in JSIL without any dedicated support, and there's a partially functional MonoGame port that only took a small amount of fiddling. You could of course manually port all that stuff over to Saltarelle-compatible C# (and get great results!) but it's a different approach.
EDIT: One other distinction is that the .NET translation approach results in broader feature support. JSIL supports features Saltarelle may never support, like pointers and structs.
As a bit of self promotion, if anyone is interested in helping on this project, or any other web based c# -> js game, shoot me an email dested@gmail :-)
- http://sharpkit.net/ (commercial)
- http://scriptsharp.com/ (closed compiler)
- http://www.saltarelle-compiler.com/ (open source)