All this talk about foods being fattening or not is besides the point. What it really comes down to is how much we eat. If you eat less kCal than you burn in a day, you lose weight. Eat as much as you burn and you stay the same. Eat more than you burn and you put weight on. You could (it would be very unhealthy) get away with eating McDonald's daily, as long as you ate less kCal than you burnt. Eating healthier food allows you to consume a higher volume of food before you reach the limit, same as exercise increases the limit. There are many apps to work out roughly how much you should be eating and that do all the tracking for you - MyFitnessPal being a great example.
I completely agree that healthy options should be cheaper, and that many people can only afford junk food, but there is nothing actually stopping them from only eating what they need, instead of what would be nice. It all comes down to self control.
Obviously there are exceptions to the rule, and this should not be considered advice for anyone - if you're concerned about your weight you really should consult with someone that has a degree.
I think the exception to the rule is the way the human body can recalibrate its own metabolism. Many people find that they don't lose weight simply by reducing intake as their body reacts by slowing its metabolic rate. It's because the human body wants to store fat (to cover periods without intake such as the cave man who has to get through winter).
That's why exercise is especially good. Not only does it burn up stored energy, but it can raise your metabolic rate for a period even once you've finished exercising.
If you're not losing weight by reducing calories you just haven't reduced your intake enough. And yes - exercise is amazing!
... as long as your metabolism doesn't prioritise retention of fat store over muscle protein!