Querystring is looking for a value at the end of the url e.g. mysite.com/?source=whitepaper
Essentially the querystring is everything after the ?
Search query is collected by Marketo when a lead comes to the website after doing a search. If you have high performing search phrases you may want to trigger off that for known leads.