You would change frequencie to 121.5 to transmit your distress call because it is the PROPER ICAO worldwide frequency that you are supposed to transmit on.
...in absence of any other frequencies to use.
But if you're in contact with a full ATC service (on a FIS, say. Or flight following in the US.) it is far better to declare your mayday directly with them. They already have your details, maybe have you on radar too. So they are at that point in the best position to help. Never mind that that ATC unit is probably also physically nearer to you and most likely more familiar with local landmarks, terrain and so forth, and maybe even has more direct access to the emergency services.
And when you're on a discrete squawk (a squawk given to you by ATC, so not a generic code like 7000) it's best not to change it to 7700. That will cause the radar to lose the relation between your squawk and your callsign/details (unless it's a very smart unit - any ATCO can advise on this?)
In the UK, if they need D&D to triangulate or something else, ATC will tell you to switch to 121.5.
Outside the UK, and particularly outside the Western world, you will also find that there is no dedicated ground unit monitoring 121.5 24/7. CAT will be monitoring it, most of the time, so that they can relay your message - most likely to the ATC unit you were already talking to before you switched to 121.5...