Why does the 747 have 4 engines instead of 2?
Simply, more engines = more power, and power is needed for several things, the first of which is, taking off.  At max takeoff weight, a multi-engine aircraft has to be able to lose one engine (after reaching the go/no-go speed) and safely continue the takeoff, which means that if you could just barely fly on 3 motors, you're going to have to have 4 to meet certification (safety) requirements.  For the amazing weights that the 747 can carry, it needs some pretty powerful motors, and all 4 of them, for taking off fully loaded and meeting this requirement.  (Interestingly, if the aircraft is empty and could safely continue the takeoff on 2, it is typically allowed to take off with one engine already inoperative -- to ferry to a maintenance base, for instance.  But this requires no passengers/freight, and thus a very light airplane.)

At cruise altitude, more thrust means a higher cruise altitude is possible, which makes for better fuel efficiency.  So while a 4-engine aircraft can certainly fly on 3 engines, and in many cases (depending on weight and outside air temperature) on 2, it can't fly as high as it could with all 4.  The higher cruise altitude not only makes for more efficient flight, it also keeps you above a lot of the weather out there, and in extreme cases, a 2-engine ceiling might not clear all the terrain on your route.  (Again, this depends on weight &amp; temperature.)

Modern engines have amazing reliability, and it's now considered routine to dispatch the twin engine 777 and 767 and A330 on long overwater routes, but 50 years ago, the reliability wasn't as great, so it was considered essential to have the redundancy so that if one engine failed over the middle of the ocean, there was still a comfortable margin, and you weren't now "one motor away" from going swimming.