I have a desktop PC with a single hard drive with Windows 10 installed. I want to add another hard drive and install Ubuntu 15.04 in it then dual boot it with Windows 10.
What free software should I use for this purpose?
As @Davidenko said, Ubuntu does come with its own; however, if you want to use standalone software then you should check out EasyBCD which runs on Windows and is free for personal use.
EasyBCD is NeoSmart Technologies multiple award-winning answer to tweaking Windows bootloader. With EasyBCD, almost anything is possible, e.g. to boot a Win7-VHD-image. Setting up and configuring Windows boot entries is simple, and there is no easier way to quickly boot right into Linux, Mac OS X, or BSD straight from the Windows Vista bootloader - on the fly, no expert knowledge needed!
EasyBCD is geared for users of all kinds. Whether you just want to add an entry to your old XP partition or want to create a duplicate for testing purposes; if youre interested in debugging the Windows Kernel or septuple-booting your seven test operating systems, EasyBCD is the key.