I received variations on this question from no less than four folks today, so it's the official Question of the Day: What's the difference between single and double quotes in PowerShell? Which should I use?
Both kinds of quotes are used to delimit string values. In general, you should use single quotes:
There are three instances when you might want to shift to double quotes. First, when you want to have variable names replaced with their contents:
That's a useful trick, since it saves you from having to concatenate strings in a lot of situations. Second, when you need to delimit a string within the string - such as in a SQL query:
Using outer double quotes lets you use the single quotes needed within the string. Finally, when you need to use an escape character, since those aren't parsed within single quotes:
That creates a tab-delimited file. Apart from those three instances, it's generally considered a best practice to stick with single quotes.
Training Update: SAPIEN Technologies is having me teach a four-day Windows PowerShell class, using the courseware I designed for them, in Las Vegas this February. It'll be at the freshly-remodeled Tropicana hotel (if you haven't seen it in the past couple of months, it's really gone from woesome to awesome). Here are the details. If that's a bit soon for you, I'll have my own 5-day PowerShell Retreat in June, also in Vegas (although slightly off-Strip). Discounted pricing for that is still available, which includes most of your meals and your hotel room for under $3000! It'll be co-located with Greg Shields' Windows 7 Deployment Retreat. Hope to see you in a class soon!