"The tilde (~) selector lets you target a sibling element. That is, an element that shares the same parent"
Could then explain how it's different than the + selector.
"This differs from the + selector which will only find an adjacent sibling (immediately following)."
I'd consider comparing it to the child and descendant selector, if I could word it properly. This is what I have which I'm not happy with:
"In some ways, the differences between + and ~ are like the differences between the child selector (>) and the descendant selector (a space), in that #header > a will only a elements directly under #header, while header a will target all a elements under #header, regardless of depth.