I prefer to join granny squares (or any pieces of crochet for that matter!) using mattress stitch, it's nearly invisible, doesn't leave a ridge and I love the finish it gives.
To join two granny squares
1. Lay out your granny squares right side up, in the design you want them.
2. Thread your darning needle with the same colour yarn (or if the granny square are different, choose the colour that will blend in the most, I am using a contrasting colour to make the stitches more visible)
3. Line up the edge stitches of the squares, working from the inside out, insert the needle through the back loop of the bottom corner stitch. Leave a long tail for sewing in.
4. Insert the needle in to the back loop of the bottom corner stitch of the other square, again from the inside to the front.
5. Continue working back and forth between the two squares to the end.
6. After every few stitches pull the seam yarn tight so that it almost disappears.
7. Secure and fasten off. Weave in the ends.
What is your favourite way to join crochet? Let me know!