I drive a modern (1 year old) 4 cylinder family car - BMW 320d M Sport Touring. It's got all sorts of junk in there that I just don't need. If I drive it carefully I can get between 50 and 60 mpg on a steady run regardless of weather/hills/people pushing.
However my typical driving is at 90+mph on the motorway and despite my economically poor driving and big fat tyres I still get 49mpg. I have two kids and a dog, I'm 6'4" and yet the car does everything I need, in much more comfort than I need and as higher speeds than I need.
All people need to do is think about what they really need from a car.
I used to have a Landrover Discovery, acres of space and I could see for miles in one of the biggest 4x4s on the road. I could seat 7, tow lots, put my life in the back and should I chose drive over just about any terrain out there. Did I need the space that much? For maybe one or two trips in a year it was handy, with careful packing it's not a problem. Getting rid of the 4x4 has saved me about £400-500/month off my fuel bill. If I need a big truck I can just hire one for the period and it's cheaper than running one.
I used to kid myself that I needed a 4x4 with the stuff I used to do, in reality I just needed to take more care when packing and driving on some of the rougher roads.