One of the things you need to remember is that these are two doomed lovers. In the prologue, the chorus mentions theses are "star-crossed lovers". In Shakespeare's time, many people believed that our lives have already been predetermined by some higher power. All the major events have some element of chance. Romeo went to the party to see Rosalind but meets Juliet. Romeo kills Tybalt by a rash and emotional impluse and this leads to his banishment. Friar Laurence's letter doesn't reach Romeo becuase of the plague. Juliet wakes up after Romeo kills himself moments before. Perhaps the two were meant to die no matter what happens.
Some may say that it is on-going feud between the Capulets and Montagues. If feud didn't did exist, they two would still be alive and together. There wouldn't have been a fight between Tybalt and Mercutio and no reason to banish Romeo.
Others might point the finger at Friar Laurence. He was the only adult that could have done something to prevent the death of the lovers. He could have not performed the marriage rites. He could have tried to get to the tomb sooner. He could have told both families what he had done when Tybalt and Mercutio was slain.
Still others may blame Romeo's implusive nature. If he had kept his cool during the fight, he wouldn't have stabbed Tybalt. If he had tried to confirm Juliet's "death", he wouldn't have made the decision to return to Verona with a vile of posion in hand. If he had waited a moment while in the Capulet tomb, he may have seen his wife wake up and the two of them could run away to start a new life together.
When you think about it, there are so many things that one can pin the blame for this tragedy.