No es estrictamente necesaria, pero es buena cosa hacer una particion de por ejemplo unos 16MB como mucho para /boot. Por ejemplo, podrás instalar cualquier otra distribución de linux, si eliminar las imagenes de los kernels que tengas en el arranque.
Precisamente porque el concepto de montaje de medios en sistemas *nix permite distribuir su skeldir en unidades en diferentes ubicaciones, inclusive remotas, es recomedable hacer uso de ello en función de las necesidades que tengas. Otro ejemplo usual es montar /home en otra maquina exclusivamente para alojar los directorios para los users. Esto es especialmente útil cuando la canitdad de usuarios de una red es numerosa
También es recomendable hacer una partición swap, con al menos la misma cantidad de ram física que disponga el sistema. Sobre la swap en Linux hay diversidad de opiniones. Hay quien dice que a partir de 512MB de ram no es necesario ya la swap, pero yo creo que es muy relativo al tipo de tareas que hagas y no creo que esté demás reservar una partición como swap, pese a que Linux gestione bien la memoria.
En Windows también es buena idea, aunque yo lo he visto documentado desde m$, crear una partición exclusiva para albergar el archivo de intercambio. Con esto consigues no fragmentar en exceso las demás particiones, ya que en el archivo de intercambio se realizan continuamente lecturas y escrituras. Además, si puedes albergar esta partición en un disco que esté en otro canal diferente al disco que contiene el s.o y a los programas/datos que uses, incrementará el rendimiento ya que las lecturas y escrituras se realizan con el máximo ancho de banda posible.
Si vas a usar grub para arrancar tanto Linux como Windows, puedes despreocuparte de, en qué partición instalarás el arranque de Windows XP (imagino que en el vista no han cambiado nada), porque harás el map.