Why Mahaabhaarat war had to happen? Many MBH characters are full of revenges, ambitions, and jealousies, then war was inevitable. Some of these revenges, jealousies and ambitions which led to MBH war are given here. Let us start from the top -
1. Ambaa's Revenge With Bheeshm
Since Shaantanu died when his children Chitraangad and Vichitraveerya were young, Bheeshm took their whole responsibility. He educated them and crowned Chjitraangad, but he also died soon, so he crowned Vichitraveerya and brought three princesses of Kaashee - Ambaa, Ambikaa and Ambaalikaa for him. Ambikaa and Ambaalikaa accepted him as their husband but Ambaa did not as she loved Shaalv. So she was sent back to Shaalv, but unfortunately Shaalv refused to accept her saying that he did not accept the thing which he has lost. Ambaa again came to Hastinaapur, blamed Bheeshm for this incident, and asked him to marry her. Bheeshm could not have married her at any cost because of his vow taken at the time of his father's marriage to Satyavatee, so she cursed him that even if she has to take several births, she will be the cause of Bheeshm's death.
That is how Ambaa was burning in her own fire and was planning to kill Bheeshm. She sought help from many people but nobody could help her. Then she pleased Mahaadev and he bestowed her a boon that she should be able to kill Bheeshm in her next life. She asked - "How, I am a woman, I cannot go in the battlefield." He said - "You will remember everything, you will get manhood and will be able to kill Bheeshm." and gave her a flower garland to hang somewhere. It would not wilt and in her next life when she would see it she would remember everything. So she hung it on Drupad's palace gate and died. Then she was born in Drupad's house as a girl and got manhood after her marriage, She became Shikhandee and became the cause of the death of Bheeshm.
2. Dhritraashtra's Ambition to Get Kingdom
Dhritraashtra is angry at his own fate of being born as a blind, and as a result this he was not getting kingdom. He always cursed his mother that why did she close her eyes at the time of seeing Vyaas Jee. His another anger was on Gaandhaaree that in spite of being pregnant before Kuntee she was not able to deliver her first son before Yudhishthir. Both the things were eating him like a termite. He agreed that he could not become the king as he was blind, but he was not ready to agree that why his son could not be a king?
3. Shakuni's Revenge with Bheeshm
Shakuni has to take revenge of his family's insult. When Bheeshm went to Gaandhaar to ask for Gaandhaaree, she got ready without any second thought and she tied a strip of cloth on her eyes too. Gaandhaaree was very beautiful. Seeing this that Bheeshm asked his beautiful sister for his blind nephew, Gaandhaaree's father did not feel much but Shakuni, her brother, got boiled with anger and he vowed to take revenge from the whole family that he would destroy his whole family. So he came to Hastinaapur and started manipulating the things in his own way.
4. Drupad's Revenge with Drone
Drupad wanted to take revenge of his own insult Drone did to him. Drone and Drupad were classmates. They were very good friends too. Drupad used to say - "Whatever is mine its half is yours." After the education Drupad became the king and Drone came home, got married, and had a son Ashwatthaamaa. He did not have any income so he could not afford even the necessary things for his son. One day when he saw Kripee giving him flour solution in place of milk and he sahying "this is not milk, I will not drink it." He became so sad that he went out of the house saying that he was going to bring a cow for his son, and he wouldn't be back until he gets one.
He went to Drupad and reminded him his promise, "Whatever is mine, its half is yours." and asked only one cow from his own share of his kingdom. But Drupad ignored it saying that it was the matter of childhood and there was no equality between them, and since friendship is between equal people only, they cannot be friends. Drone got very angry at this and came back with a thorn in his heart. Later he became the Guru of Kaurav and Paandav. He prepared them well and asked them to bring Drupad tying with a rope behind the chariot. Paandav fulfilled his wish. After taking his half kingdom, as he had already defeated him through his disciples, he took one cow from his own share and freed him. Since that day Drupad was burning in fire so much so that he even performed a Yagya to get a son who could kill Drupad - Dhrishtdyumn.
5. Duryodhan's Jealousy With Paandav
Duryodhan had several issues. First he wanted to take revenge of his father's insult by Vidur at the time of coronation of King of Hastinaapur. Vidur advised that since Dhritraashtra was blind he could not be appointed a king. That is why he always insulted Vidur. Secondly he was very jealous with Paandav, since the day they came from the forest after losing their father. he had taken for granted that Paandav belonged to forest and Hastinaapur was his kingdom and one day he would be the King of Hastinaapur. For the same reason he tried several times to kill Paandav but did not succeed. Later they took Draupadee also and were invited to live in Hastinaapur. he could not tolerate this and he forced his father to divide the kingdom.
Later when Yudhishthir did Raajsooya Yagya, he became extremely jealous seeing their wealth and prosperity. On top of that when he was visiting their royal court built by Maya Daanav, he fell in a pond taking it as a dry floor, and hit a wall taking it as a door. Seeing this Paandav and Draupadee laughed at him. he felt so much insulted at this that he could not stay there even a moment and came back to Hastinaapur and planned to take their wealth. He organized dice game and defeated Paandav cunningly and took their wealth including Draupadee. He also insulted her in the court. Luckily she succeeded in taking everything back. Seeing his plan failed he played the dice game again and sent them in exile. There also he troubled them a lot. Even after the completion of their term of exile he did not return their kingdom. He was not ready to give them even five villages, so the war was necessary.
Duryodhan was sure that he would win the war as he had Bheeshm (with Ichchhaa Mrityu boon), Drone with many unique weapons (learnt from Parashuraam), Kripaa and Ashwatthaamaa (both immortal, Karn, Shakuni and Dushaasan with him. In fact he was right in his thinking but when Destiny is against somebody nothing works.
6. Karn's Desire to Defeat Arjun
Karn always felt "Why he was a Soot-Putra? Why his mother had left him? Who was she?" Bercause of being Soot-Putra he had to suffer a lot. He wanted a good education in archery which he could not get it. First Drone did not accept him. Later he had to lie to become the disciple of Parashuraam Jee. And because once his this lie was known to Parshuraam Jee he cursed him and took his most precious education from him.
From the beginning he had the competition with Arjun. he was stopped showing his abilities in a royal demonstration of weapons and they declared Arjun the best archer, he did not like this at all. His plea was at least they should give chance to others also then only they could declare him the best archer. Next in Draupadee's Swayamvar, he was insulted by Draupadee when she said - "I will not marry a Soot-Putra." And Arjun took Draupadee. He was always eager to fight with Arjun, but unfortunately he could never stand him, still he was never disappointed and till the last moment he fought with him with the desire to kill him.
7. Draupadee's Revenge with Duryodhan and Dushaasan
Draupadee wanted to take revenge from Duryodhan - of her insult in the court, he wanted her to sit on his right thigh; and Dushaasan of her insult - dragging her in the court in an odd condition and disrobing her in the court. Even Karn insuted her by calling her a prostitute. Since that day she did not tie her hair and waited for Dushaasan's chest's blood to wash her hair. When Bheem brought it, then only she tied her hair.
8. Bheem is Angry Overall
Bheem is angry overall with Dhritraashtra and his family as a whole - the whole affair, since their coming to Hastinaapur, effort to kill him by feeding him poisonous Kheer, Baaranaavat incident, giving them a non-arable land as their mkingdom etc till not giving back their kingdom even after coming back from their exile. He fulfilled all his vows - killing all the 100 sons of Dhritraashtra, bringing Dushaasan's chest's blood to Draupadee, and breaking Duryodhan's thigh.
9. Arjun is Also Angry Overall
Arjun is is also overall angry - with Duryodhan - on Baaranaavat affair, on cheating in dice game, and on insulting Draupadee; with Dushaasan - on insulting Draupadee, and with Karn - on insulting Draupadee.
11. Krishn's Task
Krishn had to do His own work for which He had come in this world - kill many Raakshas, destruction of Kuru Vansh, Yadu Vansh and some other kings; and establishing Paandu's sons' rule.
When so many people are living with jealousies, ambitions and revenges in their hearts a war is a must to take place.