you can create an ad-hoc network between 2 PCs and share the internet connection between them. The problem with this is the computer with the modem attached must be switched on for the other to get online.
With a router, this is obviously not a problem.
AIUI there is no performance difference between PCI cards and USB thingies so I guess it's up to.
With regard to the router, check the box before buying and make sure it says it's compatible on it.