They have the same meaning "can't wait for something". They are usually interchangeable. "待ち遠しい" is always used in a positive way, it indicates that you're willing to wait for something to happen. "待ちきれない" is used in both positive and negative way and it indicates your frustration when you have to wait for something.
- Mom : It'll be time for dinner. Let's eat this pizza once everyone has arrived.
もうすぐ夕食の時間だよ。皆が集まったら、このピザを食べよう。 - Meg : It looks very delicious. I can't wait for dinner!
美味しそう。夕食が待ち遠しい(or待ちきれない)。
---> In this case, it indicates that she is so excited in eating the pizza with her family. You can use both expressions. - (Her mom leaves the kitchen and then returns in a while.)
- Meg : Mom, I'm sorry I ate a slice of the pizza. I couldn't wait for dad to come.
お母さん、ごめんなさい。ピザ一切れ食べちゃった。(お父さんが来るのが)待ちきれなかった。
---> In this case, it indicates that she didn't want to wait for a long time. You can only use "待ちきれない".