We drove but you can take the train or cruise line from Bergen to Flam. If you drive you can stop in Voss to get your picture taken with a statue of Knute Rockne and take a cable car up the mountain for nice views and a food break at the top. We also stopped at the Stalheim Hotel for the fantastic overlook view.
We were in Flam for two days and on day one took the Fjord Safari tour which uses small, high speed boats to cruise the Sognefjord and Naeroyfjord which was a lot of fun. Then we took the Flamsbana train to Myrdal, rented bikes and rode back to Flam. If you do this be careful on the steep switchbacks because there is exposure at the turns. After that you can pretty much coast to Flam. Nice scenery and relaxing.
On the second day we took a sea kayaking tour which lasted about four hours on the Sognefjord and into Naeroyfjord using tandem kayaks. It was a nice and relaxing way to see the fjords. We then drove through the tunnel from Aurland to Laerdal and then took the snow road back stopping at the Stegastein Viewpoint for the view.
I wanted to do a glacier tour. I think it would be worth it but my family disagreed stating we walk on ice eight months a year at home. Almost true living in Minnesota.
In Bergen there is a Leprosy Museum that your son’s might find interesting.