Actual attempt at an answer!
ActivityPub has actors and activities. These are very broadly defined - yes, a user is an actor, but so is a magazine in kbin. A like, a thread, and a microblog are all activities. These come from an actor, and they are sent to and cc'd to other actors in the fediverse.
NNTP, however, is not actor to actor, it's server to server, to my understanding.
In practice, the way this is implemented here, it's not that much of a practical difference, but it's interesting to know.
The other difference is that NNTP servers would forward messages to their other known NNTP servers, essentially creating a distributed network of information. Per the ActivityPub protocol however, no instance is obligated to do that on ActivityPub. The only obligation for forwarding is if a) The values of to, cc, and/or audience contain a Collection owned by the server (e.g. followers is a Collection) AND The values of inReplyTo, object, target and/or tag are objects owned by the server. So basically if I receive something from lemmy.world user actor, to lemmy.world community actor... Even if kbin.social hasn't received it and errored out, I have no obligation as the.coolest.zone to send it out to them.