What is the most cost effective way to print good quality business cards at home?

I design websites for people, and would like to offer Business Card printing as a little additional service. I’m looking for a cost effective way to print high quality Business Cards. I don’t mind paying out for a bit of printing kit if it’s pretty reasonably priced. I’ll obviously also need some software. I’m assuming I could just design the cards in Photoshop.

Any advice would be helpful. Thanks.
It’s more the hardware I need advice on.

If you already own Photoshop and don’t want to spend money on additional software, then yes, you can set up your business cards in Photoshop.

InDesign however, would make your life a lot easier – it’s included in several of the CS bundles – so if you use other Adobe software you may even already own it.

You will be able to combine text and graphics much more easily, add trim marks etc. in exact x/y co-ordinates and also be able to accurately step and repeat your cards so you can print a full sheet of them without wastage.

Additional Info
OK, all you really need in that case is a decent quality colour laserprinter. Personal favourites are Xerox and Epson. Probably the most important feature to you will be its ability to handle various heavy-weight stocks as your focus will be on cards.