3 years from date of first registration and every year after that.
You can not wait until April unless you take it off the road and (I think) use a trailer to get it to the MOT station.
I think you can test it up to one month before its due, but unless you’re planning on going away, why would you?
You could take a risk of course, but if you’re caught… no insurance, several points and a hefty fine
I generally do mine about 2 weeks before its due – on the odd occasion that it fails, you have time to fix it before it’s not legal
If you do get it tested early, but not too early, the certificate is valid until 12 months from its anniversary, not from the date of the test. It’ll say on the test certificate the earliest date you can test it to keep the anniversary the same
Example, you get it tested on 14th March and it passes, the certificate is valid until 30th March next year, but you can get it tested up to 30(?) days early and it keeps the expiry date as the 30th March; and so on