1 عدد پیاز متوسط را پوست کنده، بشویید و خرد کرده سرخ کنید. ران مرغ شسته شده را داخل قابلمه بچینید و پیازها را روی مرغها قرار دهید. زردچوبه، نمک، فلفل سیاه و زعفران و برگ بو را اضافه کرده و داخل قابلمه تا یک بند انگشت بالاتر از مرغ، آب بریزید و اجازه دهید روی حرارت کم بپزد. (مرغها را در حدی بپزید که خیلی لِه نشوند یعنی نه خام باشند نه خیلی پخته). برنج را به صورت آبکش درست کنید. بعد از تقریبا یک ساعت الی یک ساعت و نیم با حرارت ملایم، مرغهای پخته شده را از صافی عبور دهید و آب آن را جدا کنید و کنار بگذارید. داخل قابلمهای مقداری کره را (20 گرم کافیست) با حرارت کم آب کرده و به آن رب اضافه و تفت دهید تا اصطلاحا رنگِ رب باز شود. سپس آب مرغ (به همراه یک قاشق غذاخوری زعفران به دلخواه) را اضافه کنید و هم بزنید و اجازه دهید تا غلیظ شود. داخل تابهای روغن بریزید و پشت و رو، و کنارههای مرغها را با حرارت ملایم، کاملا سرخ کنید. زرشک را 5 دقیقه در آب ولرم خیسانده و سپس در کمی کره (یا روغن) با شکر تفت دهید. نیمی از زرشک را به آب مرغی که غلیظ شده اضافه کنید و نیمی از آن را برای تزئین برنج کنار بگذارید. تقریبا ده دقیقه بعد به سسِ به دست آمده از آبِ مرغ، آب پرتقال طبیعی (خارج از فصل پرتقال، نکتار میوه) اضافه کنید و بعد از یک دقیقه که چند جوش ریز خورد، حرارت را خاموش کنید. مرغها را داخل سس گذاشته و یک دقیقه کمتر، اجازه دهید سس به مرغها آغشته شود. یا میتوانید مرغها را داخل ظرف سرو بچینید و سس را کم کم روی آنها بریزید. برای برنج زعفرانی، مقداری از برنجی که به صورت آبکشی دم کردهاید را داخل ظرفی ریخته و با زعفران (به مقدار دلخواه) ترکیب کنید و بعد زرشکهایی که کنار گذاشته بودید را با آن مخلوط کنید. برنج را به دلخواه تزئین کرده و مرغها را داخل ظرف دلخواه بکشید و سس باقیمانده در قابلمه را روی آن ها بریزید.