B12 injection is the most effective way for your body to absorb B12 vitamins. They are quick and work instantly. Your body will start developing new red blood cells within 48 hours.
However, if you have a major deficiency, you will need 2-3 shots to notice the results.
You will experience the effect of vitamin shots for 7-10 days.