Apple have their own proprietary printing protocol called 'AirPrint'. Only a few printers support it at present - HP is one of those that do and you can see if your model is on the list at the Apple web site
Apple - iPad 2 - Print right from your iPad with AirPrint.
If it is there, then you can print directly under iOS 4.2 and 4.3 from apps that support in-app printing, such as Apple's iPad iWorks suite ('Pages', 'Numbers' and 'Keynote'). Not all apps support in-app printing, so you need to check out whether the app you're interested in does. For example, Apple's native iPad 'Calendar' app does not support in-app printing.
If your printer is not on the list then there are third-party apps that can help. Some printer manufacturers have released apps for PCs with their printers connected (i.e. Lexmark). On these models, an app on your PC or Mac 'pretends' to be an AirPrint printer and the app translates the AirPrint printing protocol into a form that the printer understands.
However, there are standalone apps for the iPad and 'Print N Share' is one of the best known. It can print directly from the iPad to a WiFi printer without any PC being involved. It does this by 'pretending' to be an AirPrint printer. It then, similar to the previous case, translates the AirPrint printing protocol to a form that your printer understands.
Most all WiFi equipped printers are supported by 'Print N Share' but even those few that are not are able to print via a PC using, again, a small (free) app that's available from the developers of 'Print N Share'. Once again, this app sits on your PC or Mac and links your iPad to the printer via your PC - meaning, too, that the printer can be WiFi, USB or even Bluetooth. The downside is that the PC has to be switched on.
One 'issue' that sometimes confounds users of 'Print N Share' is that this only works under iOS 4.2 or 4.3 - the iPad's 'multi-tasking' operating system (OS). 'Print N Share' needs to be loaded and running before you can print!! So, if you're going to be doing some printing, you need to first of all fire up 'Print N Share' and leave it running in the background. You can check whether it is running by double tapping the iPad's 'Home' button, to see the tasks that are 'loaded' in the 'Multi-task' menu bar. For various reasons, it's helpful if 'Print N Share' was loaded quite recently. If you haven't printed for a while, use the multi-task bar to 're-activate' it.
If you're happy to leave your PC switched on then another - and probably better - way forward is to use a PC program called FingerPrint. This is a program that runs on your PC and makes it 'look' like an AirPrint printer. It's as close as you'll get to plug-and-play printing for non-AirPrint printers. You simply download the program (there's a free 7-day version available so you can try it at no risk), install it, start the program (it automatically inserts itself into the PC's startup menu) choose the printers you want to offer to the iPad - it shows you the usual list that you get from a regular Windows print dialog box - and that's it. When you want to print on your iPad (there's no separate app for the iPad) you simply choose the print menu in apps that support in-app printing and FingerPrint makes your PC look like an AirPrint printer. You'll be offered, in the iPad, the choice of printers that you selected on the PC and off you go. FingerPrint receives the printing data from the iPad over WiFi and translates it into a form that your printer understands. I have it on my PC and it works just great.
Hope this helps, but don't hesitate to post any more detailed questions that you might have.
Tim
Scotland