What are the major pros/cons that can help in deciding which of the two to choose: WAMP vs XAMPP for running a local testing server for WordPress?
PS: I now see Stack Overflow had a discussion about it.
XAMPP is NOT cross-platform. There is XAMPP for Windows, XAMPP for Linux, for Mac and for Solaris, but each pack contains different pieces of software, runs differently with different performance, etc. (cross-platform means that you take the exact same piece of software and it runs the same way on different platforms ... like Azureus used to be: a jar that you could use the same way)
XAMPP for Windows is bloated, big time. You have mail server, FTP server, accelerator, web-dav, SSL out of the box, etc. Do you really need them all? It's not exactly an entry-level package, but in general it makes installation of everything much easier. Beyond that, any customization requires the same effort as for any other pre-made stack. But if you install on your own box, you probably don't need FTP server, do you?
WAMP is lighter (mostly the basics). Everything that's AMP is there, beyond that you have a couple of tools, phpMyAdmin, SQLite, and xdebug. Do you need SSL? You have to configure it. You want access to mail server? Must install it yourself. FTP? Ditto.
WAMP (like the name says) runs only on Windows (either 64/32-bit).
For a local machine on Windows, WAMP is the way to go. Light, smooth and post-install configuration takes a click. XAMPP for Windows isn't much of a competitor due to issues on 64-bit installation (naturally: more bloatware to install, and you need to manage each piece of extra software between 32/64-bit).
WAMP is an acronym that means: Windows, Apache, MySQL, and PHP.
There are different WAMP "distributions", such as XAMPP, WampServer (what some people just call "WAMP"), Wamp-Developer Pro (commercial software), and others...
XAMPP for Windows is just another WAMP distribution, nothing more (nor something else).
The objection that XAMPP is bloated--because it has a mail server, FTP server, etc.--might be answered by asking what you need. If you need most or all of those items, it's the full XAMPP for you. For just developing web pages, including PHP and MySQL, use XAMPP Lite. At different times I've found both to be very useful. I especially like that I can run either on a USB flash drive.
Now if I could add Netbeans to that flash drive...
Not exactly answering the question, but if you are interested in learning how the packages work together, I suggest installing and configuring them manually. I've been using this tutorial as a guideline, it is detailed and helps you get everything running and talking to each other. It's a bit more work, but provides you much more flexibility, and you actually learn the important configuration involved.
I'd like to add an advantage of WAMP that is not listed.
With WAMP you can install extensions* that allow you to easily switch between different versions of php. Since WordPress's minimum requirement is php 5.2.4 and guarantees it will run on a server using it, to be truly compatible with WordPress a plugin needs to run under that version of php. There are a lot of features in php 5.3+ that are not in 5.2.4, such as namespacing.
If you are a WordPress developer and want your plugin, widget or theme to be fully compatible and run on any WordPress install, it is helpful to have an environment setup with php 5.2.4. XAMPP doesn't offer an easy way to do that.
* Should be noted that the newer version of WAMP Server no longer supports extensions; however, WAMP Server 2.2 (32-bit) is available on SourceForge and supports them. It also has the correct version of Apache for installing php 5.2.4.
Implementing SSL in WAMP, I found more troublesome (I finally could not handle it and gave up) whereas it was extremely easy in XAMPP.
The rest I suppose there is no difference for as I use both a Linux and a Windows platform and am comfortable. Of course I have been using XAMPP for a much longer period of time.