what is the difference between ISE and Vivado?
Vivado is Xilinx's next-generation replacement for ISE.  It was released in 2012, and since 2013 there have been no new versions of ISE.  You have to use Vivado if you're working with the 7-series FPGAs* or newer.  However, Vivado cannot target older FPGAs including the Virtex 5, so you're stuck with ISE for those.

* (with some limited exceptions - ISE can target some Zynq and Artix devices, but it's not recommended)