Capital gains on these bonds are of two categories — long term capital gains and short term capital gains. In the case of listed bonds, if the holding period is more than 12 months, the realised returns are termed LTCG. When the holding period is below 12 months, individuals earn short term capital gains upon the sale of these bonds. STCG is taxed at applicable slab rates, while LTCG is taxed at a rate of 10% without indexation.
Interest Income from Bonds is taxed as per slab rates. Moreover, appreciation in bond prices is considered capital gains. If the holding period is more than 12 months, it is considered LTCG, and the same is taxed at 10% without indexation u/s 112.
Short answer, understanding in point 2 is incorrect, point 3 is correct.
When you say return is around 7% that is essentially rate of interest paid,
Taxation on interest payout is at slab rate so in a way bond taxation is same as FD.
There is a chance that if you sell bonds before maturity, then you might make capital gains (or loss), only this capital gain is taxed at 10%. But generally this is very small portion. Most of your bond income comes from interest paid out, which is taxed at slab
All Gsecs pay half yearly interest. Shubh maintains a list of govt. bonds and their interest payout date. This is good reference to find out interest payout dates. Or you can simply search with ISIN
For GSec you will get interest payout every 6 months (Which is taxable at your slab rate). at maturity you will be paid face value of bond (this might be different then what you invested to buy it)
Also if you hold till maturity, there will be no capital gains (or loss).
@Akash_Shah Thanks for the detailed answer. Its much clear to me now.
One follow up question - you said capital gain/loss is made if one sells the bond before maturity. Where can one sell it? If purchased via RBI Retail Direct, is NDS-OM portal the place to buy/sell bonds (and T bills also)?