The direct flight is long, approx 13 hrs.
Connecting flights via China/Japan etc are generally 4-5Hrs + LAYOVER + 11-12Hrs.
Connecting flights via Europe/UK are
generally 7-8hrs + LAYOVER + 8-9 Hrs if flying direct from Europe/UK to Vancouver for the second half
or
7-8hrs + LAYOVER + 6-7 Hrs + LAYOVER(most of the times in Toronto) + 4-5Hrs
The direct flight is expensive (almost 1.5 to 2 times the price of what you can find with connections) but shortest time, downside is : sitting in a crammed up space for 13-14 long hours.
(For somebody flying for the first time its better, they don't have to go through the hassle of figuring out the next connection)
Personally I prefer 2 connections as long as the layovers are not more than 2 hrs, that way I don't have to sit in the crammed up space for long hours and I get to have a meal of my choice at the airports.
Generally any connecting flight with 1 stop via china or 1-2 stops via europe is good as long as layovers are less than 2 hours and total travel time Delhi to Vancouver is not more than 22-24 hrs.