Why pick Flush over Rapid Fire?
Assault soldiers reaching the rank of Lieutenant can choose between Flush or Rapid Fire. I chose Flush for my first Assault soldier and used it probably twice; my second Assault class took Rapid Fire and uses it almost constantly.
In what scenario would one ever choose an Assault build that made extensive (or even reasonable) use of the Flush skill?
As per StrixVaria, the one good use for Flush is that it triggers Overwatch attacks when it forces the enemy to move. As an enemy in full cover has 40% defence (which is a -40% to aim), putting your other troopers in Overwatch and forcing the enemy to move via Flush may be better than taking direct shots at the enemy.
Ultimately, Flush is the one Assault ability that I never use, for two reasons.
It is unreliable. It doesn't truly force the enemy out of cover - it forces them to make a move. They can (and will) move to another covered position - sometimes moving from half-cover to full cover and sometimes moving in such a way that they make your position worse. Using explosives to deal with cover is far more reliable.
Rapid Fire is awesome when you need something with a lot of hit points dead, or when you need to guarantee a hit.