What kind of social interactions are you asking for?
You can probably make most of this work in Craft but a lot of what you're asking for isn't really "built in." It's going to take a fair amount of effort on your part via some business logic to assign users to groups (or categories), etc.
Frontend ability for users to create and join "groups".
How much security do you want? Just as a high level overview, users in Craft have various permissions depending on where (which section) they can "post" entries into.
Basically the system allows users to submit content on a section-by-section basis. It's up to the permissions you have set if other users are allowed to "see" such entries or not.
Without any additional checks, an enterprising user could theoretically mess with some of the front end forms and post to other "groups" if they have permission to do so. It'd be up to your code to make sure the user is part of such "group" (or category) first.
If it were me, depending on what you're trying to achieve, I might programmatically create new sections when a user creates a new "group" and only members of that group when invited are allowed to see / post in it. Craft would help you take care of the heavy lifting too; you would basically assign the permission of viewing/writing of that section to that user.
Plugins can also create their own permissions depending on what you need to do.
Frontend ability for users to invite others to specific "groups"—basically an email-a-friend a link with a signup/login token that will add them to the specified group.
This wouldn't be native to Craft. You'd have to build the token generation and e-mailing process here, along with doing the business logic of figuring out who was invited by whom, if said token is valid, etc.
The ability for users to have their own blog on the site, where other users can comment.
Yes, as you mentioned, this is relatively straightforward, as Craft is basically a CMS.
A hybrid approach might be to use a bulletin board/forum style software (xenforo, vbulletin, buddypress, etc.) to handle the discussions / social groups functionality then let Craft handle the blogging part. There is various authentication bridges you could use to handle user login between the two systems.
I'm sure there's a few other ways to pull this off as well.