El ensamblador es necesario para las partes mas dinamicas de un programa.
Cuanto a mas bajo nivel programemos mas rapido sera la ejecucion de las instrucciones pq no debera interpretar el codigo a mas bajos niveles hasta el binario.
Y antes que la velocidad que tanto os gusta hablar esta la correcion de un programa, sin ella da lo mismo su eficiencia. Para esto se usa siempre el so de los cajeros, es correcto, si correctisimo el muy cabron no falla y suelta billetes a mansalba, pero es eficiente, pues relativamente, pero es lentorro.
El ensamblador es importante es bueno conocerlo y poder manejarlo, eso si es bastante pesado si estas aconsumbrado a lenguajes de alto nivel.