Since Narendra Modi came into power after the 2014 Lok Sabha elections, the whole opposition united against him. Congress, TMC, AIADMK, JDU, RJD, NCP, Left and even the insignificant AAP.. all came together to work against Modi. Elections in Maharashtra where Congress and NCP suffered probably their biggest loss ever in Maharashtra did help the process of unification. As someone interested in politics, it is easy to see why the opposition parties would want to unify against the BJP. What is not understandable is why ShivSena, under Uddhav Thackarey is behaving the way it is.
If you look at news in the past 2 years, you will see that despite being in alliance with the BJP in the center (pre-poll) and in Maharashtra (post-poll), Shiv Sena does not leave any possible chance to hit at BJP. In Maharashtra at least, it seems that Shiv Sena is not in government but in opposition. Why is Shiv Sena behaving this way?
1) Powerful BJP equals Powerless Allies
This is the probably the most important reason why Shiv Sena is acting this way. In 2014 elections, most of the sane people knew that BJP would come in power. They also knew that Modi would probably get BJP its largest seat share in history. What no one expected was that the BJP would get majority on its own. But it happened.
Suddenly, the BJP is not as reliant on its allies anymore. When this happened, Shiv Sena felt a big loss of power. It could have called shots at the center if it was the party that filled the gap between BJP numbers and the halfway mark. But now it was left with nothing but a supporting role to the BJP government in the center.
2) Occupying opposition space in Maharashtra
The assembly elections in Maharashtra that gave huge mandate to Modi made one thing clear. BJP was now the largest party in Maharashtra and it was also very close to majority mark. If its pre-poll allies had pitched in a bit with seats, it would not have needed Shiv Sena, which was full of ego before the elections.
The election also gave rise to a new dynamic in Maharashtra. Congress and NCP were both reduced by a great extent in terms of seats. BJP was the top party with Shiv Sena being the second largest party.
Shiv Sena probably saw the opposition space open. By opposing BJP on any major step it takes, Shiv Sena is now pitching itself as the opposition party in Maharashtra. Shiv Sena wants to take over the votes that Congress & NCP are losing.
3) Becoming a national player itself
Shiv Sena has, by and large, remained a state level party. It is a well known party and a viable option in elections only in the state of Maharashtra.
It seems Shiv Sena is tired of this. It wants to grow. As was evident in the state elections in the last 2 years, Shiv Sena is now fighting elections in states where it never was an option.
They are expanding their footprint everywhere. And that is not something you can do unless you are in headlines often. And what better way to be in headlines than to attack Modi and BJP?
Now, I would like to clarify that if not for BJP, I would prefer voting for Shiv Sena in Maharashtra. I respected Shri Balasaheb Thackarey and loved him for the work he did for Hindus. However, the party needs to look at the greater good of India instead of looking for short term gains.