BLOCK SIZE in CBC and GCM In case I am using CBC cipher in that case is it must that my encrypted text is in multiple of the BLOCK SIZE?
Is the same true for GCM?
No, GCM does not require padding, nor does it require plaintext to be a multiple of the block size.

GCM is a mode that combines CTR, which is a stream cipher mode, with GMAC authentication, which dave has pointed out does require its inputs to be a multiple of its block size, 128-bits. However the GMAC process simply null pads the ciphertext input, then processes the length of the data as an additional input, to eliminate issues relating to that padding method.

CTR mode turns a block cipher into a stream cipher by encrypting an incrementing counter. GCM is only used with a 128-bit block cipher by design, so the stream cipher outputs are generated in 128-bit increments, and only the needed bits are used to encrypt the plaintext. If the plaintext is 136 bits, 256 bits of stream cipher output is generated, and the first 136 bits are used.

Because GCM is based on CTR, the length of the ciphertext is the same as the length of the plaintext, plus the GMAC authentication tag length, plus the length of the Nonce.