I think all kinds of stretching are effective! But if you want to improve flexibility you have to stretch A LOT and be in every stretch for a long time. And also learn to feel when it hurts in a good way, and in a bad way. If it feels like the muscle isn't answering to the stretch, that it's just stiff, then you can do this method where you tense the musle as much as you can for about 10 seconds, or until the muscle feels really tired, and then when you relax you go deeper into the stretch. And repeat it 3-5 times or so. I think it would be really good to do a long stretching session, 1-2 hours, after some kind of acitivity that made the whole body really warm. I have never tried kickboxing but I feel that for example running doesn't make me warm in a way that is needed for stretching, but i think things like dancing, capoeira, some kinds of yoga (have never tried Iyengar, how is that?) and taekwondo (haven't tried much, but) is good.
And also, some days it's feels like it's just impossible to stretch. I don't know why. So i guess that those days you should just leave it.
To get high kicks i guess depends on the hamstrings. There are really a lot of hamstring stretches and I think that they all feel different. So try many and try to understand them, some of them might work for you and some might not. Yoga is not the only way to be more flexible, and if it's mostly the high kicks that you want, then it's a waste of time do to a whole yoga class instead of stretching the hamstrings. And also i think it's helpful to do this high kicks 1000000 times, and really throw the leg. It doesn't help if you're flexible as hell if you're not able to kick/throw the leg because of weak muscles.
I also think it's important to breath a lot during stretching, and to be really relaxed, and to really feel the muscle that is being stretched.
My favourite is to stretch after bikram yoga, then the whole body is cooked spaghetti and everything is possible
I hope something was helpful, this is just what I know works for me.