what would happen..

Lets say I make fork.bsp, and play it in gmod, and a friend had spoon.bsp (a different map file), but renamed it fork.bsp and joined my game? what would happen? missing map, an error? or something weirder…

It would say his map differs from the server’s. Then, depending on how the server is set up, it will either refuse the connection, or attempt to download the map to replace his fork.bsp.

Servers can never replace client files.

Actually, I think it can. I had a map, but sent a pre-updated version to my friend, and he joined my game, but the map files had the exact same name…

No, it can’t. Your friend had the exact same map as you, or had to download it. The server replacing existing client files would be a serious problem.

GiGaBiTe is correct.