Pgsdeepak...If you're worried about reach with a crop camera, and your future plans are to buy a 5D3, then I would say buy the 70-300 L (at the lowest price possible), and sell the rest. Reach is something you can't have with full frame, without huge expensive lenses. At 300mm, you will see a similar field of view on a full frame, as you do at 200mm on a crop camera. Given your 40D is only 10MP, the actual resolution difference won't be quite as great.
If your heart is set on the 100-400, it is a much more difficult lens to carry around than the 70-300...and you might also consider waiting until a version 2 of the 100-400 comes out (might be 2014, or sooner, or later...who knows?).
I am in a similar situation, only I have the 50D. I've owned the 70-200 f/4L (non IS) for nearly three years. It is fantastic, very sharp to the corners (except for a narrow range from 90 to 130mm), great color, nice bokeh toward the long end...very little CA...and fantastic contrast. I recently printed an aerial picture shot at 200mm, 20x30 inches, and the print looks sharp even up very close. I paid $590 for the lens, new. It has paid for itself 10x fold, or more.
I've rented many other lenses, and just lately was trying to decide what telephoto to rent next. I still can't decide.
My main problem with the 70-300L, is there is no panning mode for the IS. If there was, I would probably buy one. According to the tests online, it looks to be sharper in the center than everything other than the 70-200 f/2.8 IS ii. Toward the borders, not so much...but then when you're at 300mm, you don't need the borders very often (and there are some tricks in ACR to help that along, too). The quality of color looks extremely nice, as well.
Its price has fallen quite a bit since it was first introduced. I suspect if they ever update it with a "panning IS", given their price increase trajectory for all recent lens updates...that new version would have an initial price of $1899 or higher.
If you don't need to pan while shooting, definitely consider the 70-300L.