thanks for your detailed answer
Say if people can't find consensus, what would happen if there was 2 different blockchain ? what will be the consequences of that?
It's already happening.
For example, litecoin is a different protocol.
dogecoin is a different protocol.
If there are enough people to support both protocols, then they both become a cryptocurrency with their own blockchain.
That's what happens when the creator of the new protocol decides to start their protocol with a new and completely separate blockchain. If there are two competing protocols that are both attempting to claim that they are the "real" bitcoin protocol, and they are both attempting to use the current bitcoin blockchain, then the blockchain forks. All bitcoins that exist prior to the fork exist on both blockchains. If you create a transaction that only spends those "split" bitcoins on one of the forks, then anyone can copy that transaction and rebroadcast it on the other fork, forcing you to spend the same amount of bitcoins on the other fork. If your transaction includes any bitcoins that were created after the fork, then that transaction is only valid on the fork where those bitcoins were created. Meanwhile you have users and merchants mis-communicating. Some merchants request payment in "Bitcoin" (meaning one of the two protocols) while some of their users accidentally attempt to make a payment with "Bitcoin" (meaning the other of the two protocols). This ability to copy some (but not all) transactions between the two forks, and this miscommunication could lead to loss of faith in the currency, and a reduction in use. A long drawn out battle between the two sects could result with each side trying to convince the world that their "Bitcoin" is the "Real Bitcoin". Eventually perhaps one of the protocols dies off (or perhaps they both do and some altcoin rises up in popularity to overtake Bitcoin as the new most widely used cryptocurrency).
Also can miners chose to mine only in a particular blockchain?
Yes. Litecoin miners can choose to only mine litecoin. Dogecoin miners can choose to only mine dogecoin. If the Bitcoin blockchain forks, then miners, merchants, and users all choose which protocol they are supporting by running software that accepts the blockchain that they choose. Blocks solved on one fork are invalid on the other fork.
A modification was done already in the blockchain correct?
There have been a few minor protocol changes early on. Mostly to fix bugs or deal with substantial problems.
did everyone consent to that?
From what I recall, it was pretty clear to most users at the time that the changes were necessary and weren't controversial (although it is possible that I'm looking at history through rose colored glasses). Therefore, the changes were overwhelmingly accepted very quickly. If there were a few stragglers, they realized quickly that their ability to maintain their own software and their own blockchain would be counter-productive and relatively useless.
If i have a wallet at coinbase for example
Coinbase might like to call what they offer their users a "wallet", but it really isn't. With a "wallet" you maintain full control of your private keys and therefore your bitcoins. If you don't have exclusive control of your private keys, then you don't really have any bitcoins. What Coinbase generally offers is an "account". Like a bank account, you no longer own or control the money (your bitcoins) when you send them to Coinbase. Instead you turn your bitcoins over to them, they take full control of the bitcoins and in exchange they create a account balance in their own database. Then they promise to send an equivalent amount of their bitcoins wherever you want upon your request.
and they decide to follow a modification which my btc client didn't agree on and didn't update, would i be able to send those coins from coinbase to my btc clients?
Since the coins were received by them before the fork, they would control both copies of the bitcoins (from both forks). It would be up to them how they want to handle that. They could choose to exclusively support only one of the forks and abandon all the bitcoins from the other fork. They could choose to support both forks and make sure that they are careful to keep the bitcoins from each fork secure and available to you. They could be incompetent and accidentally end up with some of the bitcoins stuck on only one fork and other bitcoins stuck on only the other fork. If you turn your bitcoins over to a third party and don't have exclusive access the the private keys, then you are making the choice to turn control of your finances over to them and accepting the fate of whatever they do whether you like it or not.