There are currently two quite different PSP models available on the retail market (PSP-3000 and PSPgo), or three if you look carefully (PSP-2000), plus another you can find used (PSP-1000). That makes four PSPs to choose from, and though three of those models are quite similar, each one is a little better for a different specific use.
How to Choose the Best PSP Model
There are three variables that can influence your choice of which PSP model to buy (whether you're buying it for yourself or as a gift for someone else): the intended use of the PSP, how much you want to spend, and the form factor.
Of these three variables, the intended use of the handheld is the most important. If you (or the recipient of your gift) wants to run homebrew, you'll want to choose a different model than if you want something that takes up the least room possible in your pocket or bag.
Price can also be a major influence on which model you buy, especially considering that the two (or three) currently available models differ by almost $100 USD. Form factor is probably the least important variable, and may be so closely related to intended use that it doesn't really need to be discussed separately. Suffice it to say that one PSP model, the PSPgo, is significantly smaller than the others. It's also a lot cooler, so if that's important to you, then factor that into your decision.
The Best PSP for Homebrew: PSP-1000
The first thing to consider when buying a PSP is if the machine will be used to run homebrew programming, or if it will simply be used for games and movies available in retail shops or from the PlayStation Network. Most buyers are unlikely to run homebrew, as it takes considerably more work than retail games, and it requires some knowledge of programming.
If you or the recipient of your PSP gift are an avid homebrew programmer, though, you'll want to make sure to get the best model for that purpose. It is possible to run homebrew on both the PSP-2000 and PSP-3000, but for the fullest possible homebrew experience, the PSP-1000 is still the model of choice (especially if you can get one that already has firmware version 1.50 installed).
You won't be able to find a PSP-1000 new on the shelves, but you might come across a used one at your local game shop, and you can definitely still get one on eBay. You'll probably pay more for a PSP-1000 with firmware 1.50 installed, but if you're going to be playing with homebrew anyway, you can make downgrading the firmware your first project and buy a PSP-1000 with a later firmware version to save a bit of money.
The Best PSP for UMD Gaming and Movies: PSP-2000
If you're just looking for a machine to play retail games and movies or PlayStation Network content, then the PSP-2000 or PSP-3000 will be your best bet. The main difference between the two models is the screen. The PSP-3000 has a brighter screen, but some users saw scan lines when playing certain games. Most players probably wouldn't even notice, but if you're picky about graphics, then stick with the PSP-2000.
Although the PSP-2000 isn't considered to be a current model, if you look around you can probably still find a new one at retail. You're most likely to find them in special edition bundles like the God of War bundle with its red PSP-2000, or the Madden bundle with its blue PSP-2000. If you can't find one new, try used at your local game shop, or eBay. Or just go with the PSP-3000 which is about the same price.
The Best PSP for Portable Gaming and Movies: PSPgo
If you're excited about downloading games and movies, and don't care if you ever see a UMD game or movie again, you might consider the PSPgo. It's definitely smaller than the previous PSP models, being a size that you could actually carry in a normal-sized pocket.
The PSPgo also has the highest cool factor--you really can't beat that sliding screen--but it's a factor you'll pay for, as the PSPgo also costs considerably more than the PSP-3000. As of this writing, it costs around $80 USD more ($249 compared to $169).
Aside from the higher price, the main drawback of the PSPgo is the lack of UMD drive. In order to make the machine smaller and faster than its predecessors, and fit in that 16GB of internal memory, something had to go, and it was the optical drive. If you have games on UMD, you won't be able to play them on the PSPgo, so you'll probably want to choose a different model. If you intend to download all your games anyway, don't want to run homebrew, and need super-small portability, then the PSPgo is the PSP for you.
The Best PSP for All-Around Performance and Value: PSP-3000
I suspect most users are going to want the best value for their dollar, which I think you'll find in the PSP-3000. It's not as small (and thus not as portable) as the PSPgo, and it doesn't have any internal memory, but it does have a UMD drive, and memory sticks don't take up much room in your pocket (and with the right memory stick, you might not even need more than the one in the memory stick slot of the PSP).
For the flexibility of being able to play both downloaded and UMD games and movies (which, incidentally, any PSP model besides the PSPgo can do with a big enough memory stick), and for the lower cost and easy availability (compared to earlier models), I recommend the PSP-3000 for most gamers. Like the earlier models, but unlike the PSPgo, the PSP-3000 also has a user-replacable battery, which is handy if you own the machine long enough for the rechargeable battery to start wearing out.
To see the strengths and weaknesses of each model broken down in list form, see Which PSP? Strengths and Weaknesses of the Different PSP Models.