Complex Roof Problem
This roof leaks during the snowy part of winter and during storms in the summer, certainly due to poor flashing. The soffit that meets the roof is one of the toughest areas to waterproof. In the photo, you can still see signs of an ice dam. An ice dam occurs when snow melts and the water freezes when it hits the colder edges of your roof. Eventually, water pools behind the dam and works its way back up under the shingles and under the soffit until it finds an opening through the roof.
The solution begins with good flashing, since this should stop leaks from rainfall and might stop the leaks from ice dams as well. Begin by removing the shingles down to the wood sheathing and slip a strip of adhesive ice-and-water barrier (available where roofing products are sold) under the soffit/main roof joint. Depending on how the roofs join, you may have to cut a slot to work it in far enough. It should overlap another piece of ice-and-water barrier laid below, all the way down to the roof edge. This should cover the most leak-prone areas. Then reshingle, sliding metal step flashing behind the fascia board (the trim behind the gutter). The valley flashing, laid over the joint where the two roofs meet, should overlap the step flashing at least 2 in.
If leaks continue to occur from ice dams, consider installing roof edge heating cables. (Find them locally at hardware stores or home centers.) Improved attic insulation and ventilation are usually the best ways to prevent ice dams, but they might not be effective in this complicated roof situation.