For a petrol engine to work efficiently (and therefore give you good fuel economy) it needs to be warmed up and driving the car at around 50mph. A diesel engine gives consistent fuel economy under nearly all conditions. (i.e. you'll get roughly the same mpg for short journeys around town as you will for long motorway journeys at 70mph).
So a diesel engine is far better for short hops around town. (I currently drive a petrol car because, through unemployment, I had to buy the cheapest reliable secondhand car I could find. But I love diesel cars. I used to drive a 1700cc diesel car, which consistently achieved 56mpg under all conditions. The only exception was on really long runs, in hot weather when the fuel compressed more easily, when I usually got around 64mpg).
The main criticisms of diesel-engined cars used to be related to noise and to sluggish acceleration. Modern diesel-engined cars are no noisier than their petrol-driven equivalents and can be incredibly 'nippy' under acceleration.
Chris