maraming differences and its very technical, but the most basic difference for your purpose is that the router will allow you to connect all your PCs to your DSL modem while the hub or switch will just connect all your PCs together and not be able to connect to the DSL modem.

you can mix and match network components such as network cards, no problem whatsoever.

for the router you can opt for a wired or wireless one. Personally, I use a Linksys router/switch for my home network. I has 1 port for the modem, 1 for cascading (connecting other hubs/switches), and 4 switch ports. At most, I only connect 3 PCs and laptops anyway.