(I am of course leaving out MachineKit since you're familiar with it already.)
The Duet Wifi is a lovely controller and really my top recommendation for all 3D printers right now unless you cannot use wifi in your printing environment.
I don't believe Smoothieware has an advance feature at the moment (planned after the big upcoming motion refactor I think?) but is otherwise a popular controller option.
I don't recommend buying any of the 8bit options today... It's 2016, spending money on electronics built on 1990s era processors is kind of nuts. Sailfish is perfectly serviceable, but is well-understood by the devs to be terminally mature in terms of features (due to code space limits on most Mightyboards) and has some added friction for custom printer builds due to the whole x3g conversion toolchain issue. I have three printers running Sailfish at the moment and love it but wouldn't build another.
Marlin is also terminally mature (due to being out of processor clock cycles and a kludgy codebase) but the devs are in denial and keep trying to keep it struggling along. Working pressure advance was just implemented very recently, but enabling it brutalizes the processor, so you're very limited in how fast the printer can run with advance enabled. (Sailfish has hyper-optimized code, Marlin does not, so there's a big performance difference on the same processor.)
The Duet Wifi is a lovely controller and really my top recommendation for all 3D printers right now unless you cannot use wifi in your printing environment.