I know people tend to gain weight with age, but I think it is due to people becoming less active (sitting in front of a desk all day tends to not help). To buck the trend, it takes a lifestyle change and an iron will -- a diet (as most people see it) is temporary and will never work in the long run. Working out and better eating habits have to become part of the daily routine.
I've become a pretty big health nut and working out is a large part of my life now. In high school I was 6'2" and weighed about 150; during undergraduate and my MS degree I ballooned up to 240; now, at 32, I weigh 185 (still 6'2") and am in much better shape than I was even during high school. I work out every day of the week for about an hour; and some days two hours. I'm not a fan of BMI since it doesn't really tell you what you need to know. I find body fat calipers a better way to measure how much fat I have. I don't even worry about using the formulas to convert it to a body fat percentage anymore. I just note how much I have at the various measurement sites on my body; but, last I checked my Body Fat was sitting around 9 to 10%. However, I find going by the mirror is a much better gauge of where I want to be.
Also, taking it upon myself to start cooking made a vast improvement in my health. I now eat much better since I now exactly what is going into my food and into my body. I still enjoy going to restaurants, but, I'm much pickier about what I eat.