It seems this thread has kind of come full circle/petered out but I have to say I found the topic very interesting and a sort of example/tie-in to the other thread topic about how we define etiquette. I think Margo's actions are a perfect example of the difference between being nice and being polite.
I can't remember if Claudia was uninvited or just forgot to RSVP, but thinking on it I realize it doesn't matter because IMHO an uninvited guest and an invited guest who does not RSVP and then comes anyway are just two sides of the same coin: either way, they are being rude and causing problems for the host.
A host's responsibility is to make their guest feel welcome. A guest who feels unwelcome will stop coming.
A guest's responsibility is to keep the host from feeling burdened. An unappreciated and/or put-upon host will stop hosting.
Margo did not fail as a host but Claudia was a horrible guest.
I wanted to mention an interesting aspect of this: letting uninvited guests stay anyway. About 90-99% of the trouble Margo went through could have been avoided if she had held firm at the door and insisted Claudia leave. I think it is the one loophole a host is given that is the most difficult to utilize. It flies in the face of being a host, which is synonymous with being welcoming and accommodating. And yet, I believe a host is completely within their (good etiquette) rights to deny guests that are either a) uninvited and/or b) in violation of rules the host established (i.e. brought extra people, brought children, brought pets, wrong clothes, etc.) Turning someone away can feel so wrong but it is allowed. It just isn't any fun. "Uninvited guest" is really an oxymoron - if they weren't invited then they aren't a guest. Turning people away may not be nice but it can be done politely and within the acceptable boundaries of etiquette. Margo was being kind when she let Claudia and her kids in - she would not have been impolite to turn them away. Margo chose the lesser of two evils and allowed Claudia and kids to stay, but that was bonus generosity.
Without assuming tone, I don't see anything Margo did as rude. I don't even think the bit with the tuna and salmon was PA. Claudia wanted salmon for her boys. There wasn't enough. Claudia should have had no expectation of anyone else sacrificing their salmon. Claudia created the problem. If she wanted her sons to have salmon then she should have given them hers - it wasn't Margo's responsibility because Margo had enough food for all the expected guests at her party. She went out of her way to provide for three extra people that weren't even entitled to stay, and one of those people complained about it!
Here is the bottom line that I wanted to say about the salmon, and about dealing with rudeness in general:
Even if Margo had enough extra salmon, I don't think she should have served any more than she planned to. Why? Because if you accommodate rudeness you are rewarding it and encouraging it. People usually do whatever they are allowed - as in what they can get away with. Tolerated behavior will continue if there are no consequences. If a person shows up uninvited/without RSVP only to be let in anyway and treated as equally as a proper guest, they have learned that they can show up where and whenever/never have to RSVP to anything. Being polite does not mean protecting people from their mistakes/rudeness.
Rather than turn them away, Margo chose to take on the burden of hosting three extra uninvited/unexpected guests. Despite not planning for them, she gave Claudia and her kids seats at the table. She gave them food. She answered Claudia's rude questions factually even though they really didn't deserve a response. She gave them all this, when they weren't even technically entitled to come in the door. She was willing to extend her generosity far above and beyond.
To answer the topic question: Though she could have perhaps done some things differently, no, I don't think Margo was rude.
PS: Without tone/context/etc. I do not believe any of the things Margo said or did could be considered PA or "passive aggressive." It is a pet peeve of mine that people seem to like to throw that word around when it either doesn't apply or apparently they have different ideas of what the actual definition of PA is. Taken at face value, I don't feel there was anything manipulative or confrontational about what Margo said. As many have pointed out, she was not the one to point out/bring up difficulty - Claudia was. From what I could understand, Margo was trying to adjust things as smoothly and unobtrusively as possible. Any discomfort or embarrassment on Claudia's part (which we are assuming and have no real proof of) is a) Claudia's own fault and b) a natural response to being the perpetrator of rude behavior! Even if Margo wasn't trying to shame Claudia, Claudia should have felt some shame or remorse for causing Margo such trouble. A good guest does not want or expect a host to go out of their way for them.