Generally, famous refers to recognition, and popular refers to reputation (of a person) or frequency (many people use a thing or visit a place).
Famous often, but not necessarily, has positive connotations. Knowledge of the famous person, thing or event is widespread.
Popular usually has positive connotations, or when referring to a place, it means it is visited by many people. The person, place or thing is largely well regarded among the people who know of it, but doesn't necessarily mean a lot of people know of it.
Perhaps it's easier understood with an example.
- A famous restaurant: Is well known. The name of the restaurant is recognized, perhaps because a well-known chef founded it, or it advertises a lot, or a well-known event occurred on the premises.
- A popular restaurant: It's usually busy. The majority of people enjoy eating there. Or maybe they don't, but they go there because the food is cheap, or it's the "place to be." Outside of the people that eat there, it may or may not be well known.
A restaurant can be both famous and popular (everyone knows about the restaurant, and many of them go there), or popular but not famous (only the people that frequent the restaurant know of it), or famous but not popular (making it infamous).
If you're talking about software, there is, imo, even though the two do overlap. (A lot depends on the context: I'm assuming a general one below.)
Usually, when you update a software, you apply patches and additional bits and pieces that the seller provides you for free, in theory to keep your copy in line with the official version (which is likely more stable, more secure and may even provide you with some new / better options, functionalities.)
On the other hand, when you upgrade a software, you usually buy / pay extra for a version unavailable for free. Of course, an upgrade serves as an update as well (in most cases.)
An example: say you have an antivirus program that you did not pay for (it being made legally available for free), but which has a commercial version as well: You usually update its database (to keep you safe from newer threats) - but if you upgrade it, it means you pay for an advanced version that gives you extended protection: not just via an updated database but also through extended capabilities (like email-scanning, link-scanning etc that were unavailable in the free version, no matter how up to date your database was.)
(Again, a real lot depends on the context.)
Best Answer
Swap means "exchange", while switch means "change".
When you swap something, you replace something with something else:
When you switch something, you move from something to something else: