I know both are good, but between freestyle and breaststroke, which is more efficient in strengthening arms, shoulders, and upper body?
There isn't going to be a big difference for upper body, but assuming that you are actively working swimming and not just idling along, I believe breaststroke will be better for overall body shaping.
- Deltoids - Will get slightly more work with the breaststroke, as the arm recovery is mostly underwater.
- Lats - Both will work the lats fairly equally.
- Pectorals - Again, slightly more work due to the adduction component that is more emphasized in a breaststroke.
Where breaststroke will have more of an edge overall, in my opinion, is the legs, as there is more muscle involvement with the whip kick than there is in the flutter kick. Flutter (freestyle) kick will mainly work hip flexors, with limited quad/ham involvement. And this is more emphasized in short distance/sprint freestyle, as in distance freestyle the legs are mainly used for stabilization and very little for propulsion.
If you are comparing strokes for upper body involvement, the greatest bang for the buck will come from the butterfly. However, all of them are limited in some way, so your best best if you are relying on swimming only is to learn all 4 competitive strokes and do workouts that use all of them.