While the exact terms vary with every partnership, I think the easiest way to sum it up is that an interline agreement is like a friendship, a codeshare agreement is like an engagement, a joint venture is like a marriage, and an alliance is like having a big family, with everyone sort of doing their own thing.
What are differences among interline, codeshare, joint venture and alliance?