SQL Server Transactional Replication and Security Setup
Firstly, it doesn’t matter how you configure your replication, the snapshot agent always runs on your distributor. It takes a snapshot of your publication and puts it in snapshot folder, then depends on your replication type, it will be send to subscriber by either distribution agent or merge agent. So publisher doesn’t need access to snapshot folder, actually no agent will be running on publisher.

Secondly, as the snapshot agent takes snapshot from publication and puts it in snapshot folder, it will need access to publisher and the folder. The log reader agent runs on distributor and reads transaction log on publisher then moves it to distribution database, so it will need access to both publication database and distributor database.

Thirdly, “Agent process account” here is the account setting for distribution agent. In transactional replication, distribution agent will apply the initial snapshot to subscriber and also takes transactions from distribution database to subscriber, so it will need access to both distribution and subscriber database, as well as snapshot folder.

If you need more information about replication, please refer to Book Online.

The only reason the snapshot directory need to be a share is when the subscribers are pull subscribers.Whatever account you are pulling with (the account the distirbution agent runs under on the subscriber, or the publisher login account) needs to be able to read the snapshot share and read files and list files and folders permissions on c:\snapshot.