There has been a lot of hype around biofuels over the last year or two. Any sane person can see that corn based ethanol and soy or palm based biodiesel are just plain silly. Switchgrass based ethanol is definitely a step up from corn (if we can ever commercialize it). Crop based fuels have the additional problem that we have to use land that would otherwise produce food (or remain virgin forest in the case of sugar cane or palm) to get these meager energy increases. The land is more valueable in other uses.
So why are we still hearing about corn? Because it can be done today. Never mind that it's not much of an improvement over fossil fuels. There is a big lobby behind it and it gets results now, even if the results are not worth anything. Thankfully, we're starting to hear some vocal opposition to these fuels from some sensible folks.
Photovoltaics and concentrating solar arrays can produce 100 times the energy per acre of corn ethanol. The problem is energy storage. Fuels are just more effective than batteries at storing energy for long times.
It seems algal biodiesel is the clear winner for biofuels. The energy produced per acre is much higher than even cellulosic ethanol, it uses much less water, and can be produced in locations with little or no agricultural value.