A microkernel is easier to maintain. A true microkernel has about 6.000 lines
of code, compared with 30m of Linux
A microkernel has more stability because it transfers some processes to the
user space. If a Linux or Windows driver crashes the whole system crashes
because drivers run in kernel mode. A driver crash does not crash the
microkernel.
In a microkernel design you can port the same system between different
microkernels, e.g Hurd/L4. This allows more flexibility.
In a monolithic kernel if you change anything you have to recompile the whole
kernel again and again. In a microkernel you compile kernel and servers
separately (my guess)
It can be ported to other architectures with much less effort.
You can read this 6 page introduction to the differentes between the two
http://www.vmars.tuwien.ac.at/courses/akti12/journal/04ss/article_04ss_Roch.pdf
Or watch this presentation by Mr. Tanenbaum in youtube
http://www.youtube.com/watch?v=bx3KuE7UjGA