Well, usually what works best is to use a
router to do the physical connection. The two machines plug into the router, and the Internet plugs into the "WAN Port" on the router. Now, both machines can talk to each other and both can talk to the internet. (Plus, most routers provide a firewall!)
In this scenario, neither one of the computers is a "host."
Now, if you want the two machines to "talk Windows file-sharing to each other," you probably want to use the package
Samba, which implements what you need to let your Linux box appear in the "Network Neighborhood."