Page callbacks can receive wildcard arguments through the Drupal (6 and 7) menu system and using this results in quite nice and clean URLs. Core uses this for things like loading the nodes by their node id. The alternative is to use straight query parameters from $_GET as usual in PHP. Core seems to use this in a few places, for form redirects, the pager etc.
When would it be appropriate to bypass the menu system and just use a query parameter? What are the pros and cons of the two options for parameter handling?