The most important advantage of interrupts is that there is no need to poll any more. This means that an OS does not have to spend most of the processing cycles asking and waiting for an I/O device to request attention. This makes it much easier to develop a multitasking OS.
Another advantage of interrupts is the decoupling of the handling of I/O devices. Because each source of interrupt has its own ISR, each ISR does not need to care about the other sources of interrupts. In the case of polling, if multiple devices are monitored, then a switch statement (or something to the same effect) needs to differentiate which I/O device requires attention after the polling loop exits.