I can confirm this works. Someone I work with is using 5 or 6 arduinos to collect data on a network, and getting them all to come on from a cold start was a 10 minute ordeal.
To find the pin, look at the Ethernet Shield from above with all of the writing in the correct direction (board is sideways, analog pins closest to you, Wiznet Ethernet jack facing LEFT), the TOP LEFT pin in the upper black header that the Wiznet plugs into is the Wiznet's reset pin. There is a trace on the board coming from that pin, you can follow it to the 8 empty holes hiding under the Wiznet module. The second from the bottom on the right-side row is where the pin is broken out. It looks like lady ada had her thinking cap on when she designed this board.
I am powering my arduino + ladyada's shield + Wiznet811mj with 5v regulated power (no usb attached).
I have to press reset button after powring up my above setup.
I traced the reset from WIZMJ11 (pin next to WIZ811MJ lable on the module) to reset pin on shield and they are connected (shield came with a jumper fix 6 months ago).
This is just a guess, but it could be a reset timing issue.
I also had problems at first, because I overlooked the reset jumper assembly step when building my Adafruit shield. I haven't seen any reset problems since I fixed that (but I haven't used the Ethernet shield as much as I'd like, so my experience isn't statistically significant).
I'm thinking that, depending on which bootloader you have, and the design of your sketches, it's possible you're trying to access the Wiznet before it's finished its own initialization (Remember that it's not just hardware: it has its own little CPU, that has to set up its own firmware). If it's working consistently after hitting the reset button, it could be because a power-on reset takes longer than a reset after it's already been up and running.
Try adding a delay() before your first call to the Ethernet library in the setup() function, somewhere in the range of 10-100mS. If my guess is right, giving the Wiznet that extra time would cure the problem.
An interesting development: after my previous posting, I started on a new Ethernet-based project, and found myself having problems with unreliable reset on the Wiznet module.
This project uses a different model of Arduino, which may have a slightly-different hardware reset circuit.
Since I have spare I/O pins on this project, I made the change to control the reset from software, and it appears to have solved the problem.
Thanks for the info, Santosh. I have two Adafruit shields (for now: one is going away soon to report on weather conditions at a remote site), so I can try both methods side-by-side.
What value capacitor did you use? The reports in the thread you pointed out seemed to indicate that 22nF was too little, but 100nF interfered with bootloading.