QuickSort: average O(n log n), worst O(n²), in-place, not stable, cache-friendly. MergeSort: always O(n log n), O(n) extra space, stable, good for linked lists. QuickSort usually faster in practice (cache locality, smaller constants). Use MergeSort when: stability needed, worst-case guarantee required, external sorting (large files).