MPPT is more efficient. It is, essentially, a buck converter with downconverts panel voltage to the battery voltage. So you get power equal to Vmp x Imp x 0.95 (efficency). But it is more expensive too.
PWM (or on/off as you call it) simply connects panel to the battery, so you get power equal to Vbatt x Imp.
So, if you have a lot of panels, go with MPPT. If you have little, the gain in efficiency will not warant higher cost.