I did withdrawal my BTC's 4 days ago and it is still pending. Is it normal that it takes so long? How much longer must I wait?
When you say you withdrew it, it sounds like you are withdrawing from an exchange.
In this case, it's completely up to the exchange when they'll broadcast a transaction sending you your money - some exchanges are very very slow at this and it has nothing to do with the bitcoin blockchain.
If they've actually sent the transaction, and you're just waiting for it to confirm on the blockchain it's possible they sent it with a really low fee. In this case, check the link commented by Зелёный for more information about why your transaction isn't confirming.