My family are fairly fat, not obviously so, but certainly on the 'overweight' end of the BMI scale. I was always thin, on the other hand, until I went to university, after which I started to put weight on. Now, I have a bit of a beer belly, at age 24, though nothing more than that. I go to the gym about twice a week (or did until a bad cold that's lasted about 2 months, though I have been exercising through helping my dad with building work at home). I usually eat fairly healthily at home, and have the treat of McDonalds or Morrison's deli counter chicken for lunch once or twice a week at work. Aside from that, and biscuits with my tea and coffee, I mostly eat fairly healthy food, lots of vegetables, rice and pasta, chicken, and salads.
Since I started following this routine (not a strict plan, just a guideline for my own intake), and thinking about the calories I take in, I've managed to lose a stone. It's taken my a few months to do, but that's because I'm not on any specific diet or fitness plan - it's just been a few easy, minor changes to my daily gorging and I'm losing weight at a reasonable level. This way, I'm still getting to eat the foods I enjoy, including stuff that people would consider to be junk food (takeaway maybe once or twice a week, then the rest of the week eating proper home cooked meals), while staying healthy and not piling the weight on. Which works fine for me.
I'd say the middle ground is the best option. There's no point in dieting or whatever only to never actually enjoy the foods you like, as I see food as being one of life's pleasures. But equally, you shouldn't eat those things so much that you end up looking like a whale or risking a heart attack. By balancing everything out, you'll be happier, and healthier. Besides, there are plenty of healthy meals that taste amazing, and are pretty easy to cook (I have a home-made pesto recipe myself, along with home-made tomato sauce using only fresh ingredients and no added oils), not to mention cheap (I used some of these recipes at university, on a student budget...).
One thing I will say is that calories are the important factor. Everyone always talks about these fad diets that say you need to regulate how many carbohydrates you take in, or where you can only eat red foods on a Tuesday and blue foods on a Friday, or whatever, but they are mostly bullshit (maybe some have some medical grounding, as I'm not a doctor I wouldn't know, but mostly they are a load of crap). Calories are what are important, as they are basically the energy value released from burning the mass of the foodstuff in your body. Less calories means more energy having to come from the biomass already present, i.e. the fat stored in your body, so if you eat foods with fewer calories that still have the recommended amount of vitamins and nutrients and so on, then you should be losing weight without any major changes in your daily life. That's also how I've managed to lose weight over time - I assume my limit as no more than 2000 calories per day, and do rough figures in my head to keep an estimated tally. The ideal way of doing things, as far as I'm concerned...