前提:
ほとんどの場合、大きな違いはでない。
ダブルクォーテーションのみ式展開ができる
=シングルクォーテーションだとできない
'#{foo} bar'
⇨ "#{foo} bar"
ではシングルクォーテーションを使う場合はあるのか
結論あります。
具体的には、
シングルクォートは、入力した文字をエスケープせずに「そのまま」保持するときに便利です。
例えば「バックスラッシュ」の文字は、改行文字 \nと同様に多くのシステム上で特殊な文字として扱われます。
なお、シングルクォートで文字列を囲めば、簡単にバックスラッシュ文字のような特殊文字をそのまま変数に含めることができます。
'\n' # 'バックスラッシュ n' をそのまま扱う
=> "\n"