The basic difference of course is that a Notifier is a broadcast mechanism. If you have ten threads waiting on (listening to) the queue, and enqueue an item, then only one will stop waiting. I think it will be the one that started waiting first but I don't know whether that is guaranteed.
If you have ten or ten thousand threads waiting on a notifier, they will all stop waiting and take the update.
With a single element queue, you can't put any more into the queue until the first item is taken out, but with a notifier, you can put as many in as you want, and if the receiving thread or threads don't finish looping in time, they can miss notifications. There is no way for the sender to know if any or all of the recipients have received a particular notification.